• MATLAB基础(一):简介及数值数据特点与常用数学函数


    前言:
      这学期已经忙得要死了,还作死报了数学建模,关键是选了数学建模选修课,还要写作业,那就学习一下MATLAB吧,算是了解一下擅长数值计算或者说科学计算的编程语言

    本系列博客记录MATLAB学习过程,非编程零基础


    可交互式编程的命令式语言
      MATLAB 的语言是一种类似于Python的可交互式编程的命令式语言

    一些基本特点
    语句末尾带不带 ; 均可,不带 ; 立即输出当前运算结果
    多行代码用续行符 … ,
    大小写敏感, 所有系统函数均为小写
    下标从1开始,下标访问使用()
    矩阵元素列优先存储

    面向矩阵运算的特性
      MATLAB 产生于矩阵运算,常用数学函数的参数都定义为矩阵变量,标量则是矩阵变量的特例。函数在运算时是将函数逐项作用于矩阵的每个元素上,运算结果是一个与自变量同型的矩阵

    标识符的解析顺序
      MATLAB 的标识符解析顺序:
      变量 → 内部函数 → 程序文件(当前文件夹下的程序文件 → 文件搜索路径文件夹中的程序文件)

    >>sin(1)
    sin(1)
    	  = 0.8415
    >>sin = [1,2,3,4,5]
    >>sin(1)
    sin(1)
    	  = 1
    //sin被先解释为变量sin,此时删除sin变量后可以正常使用sin函数
    

    所以尽量不要使用内部函数名作为变量名,以免屏蔽函数


    MATLAB数值数据类型及特点

    • 整型
      有符号、无符号8位、16位、32位、64位
    • 浮点型
      单精度 single 4字节、双精度 double 8字节
      MATLAB中数值数据默认为double型
    • 复数型
      复数型数据包括实部和虚部两部分,均默认为double型,虚数单位用 i 或 j 来表示,real()取得复数实部,imag()取得虚部

    MATLAB的类型转换使用的是数据类型转换函数,如uint8()、转换为无符号8位,int8()、转换为有符号8位,single()、转换为单精度

    数据类型转换函数转换越界数据时不会产生溢出效果,到达极值返回

    class()函数获得变量类型


    数值数据的输出格式
    作用于全局的format命令的使用:format 格式符
    格式符:long(保留15位小数),short(保留4位小数,默认格式)
    format命令只改变数据输出格式,而不影响数据的计算和存储


    常用数学函数

    • 面向矩阵运算的特性
      与上面提到的相同

      >>A = [4,2;3,6]
        A = 
        	 4    2
        	 3    6
      >>B = exp(A)
        B = 
        	 54.5982    7.3891
        	 20.0855    403.4288
      
    • 涉及度数的函数按弧度单位与角度单位区分
      以角度为单位的函数都在其余函数名后加一个d,表示以角度为单位

       sin(pi/2)
       sind(90)
      
    • abs()函数 ①求实数的绝对值 ②复数的模 ③字符串的ASCII码值

    • 取整函数
      fix()、舍去小数,round()、小数点后一位四舍五入,ceil()、ceil天花板 向上取整,floor()、floor地板 向下取整

    • 求余函数   rem(),mod()

    • 判断素数 isprime()  返回 0 或 1


    例子

    问题:求区间[1,100]内的所有素数

    num = 1:100; // num为从1到100的向量(矩阵)
    judge = isprime(num); // 判断num的每一个元素是否为素数,结果保存在judge向量中
    judge = find(judge); // 筛选出judge中非0元素 的序号
    ans =  num(judge); //得到素数向量
    

    2019/4/15

  • 相关阅读:
    kubeadm安装kubernetes集群
    推荐几个大厂的前端代码规范,你也能写出诗一样的代码!
    恕我直言,你可能连 GitHub 搜索都不会用
    全球最火的WEB开发学习路线!没有之一!3 天就在GitHub收获了接近 1w 点赞
    VS2013扩展和更新JS智能提示
    linux下升级git版本的操作记录(摘录)
    python 多版本 安装模块 ModuleNotFoundError: No module named 'xxx'
    记录一次app报病毒的问题
    python 根据大图片生成各种规格图片 生成ios需要的各个规格的icon
    React Native iOS 项目初始化
  • 原文地址:https://www.cnblogs.com/kafm/p/12721818.html
Copyright © 2020-2023  润新知