当前位置: 首页 > news >正文

MATLAB基本运算(2)

MATLAB基本运算概述

MATLAB提供了丰富的运算功能,包括算术运算、关系运算、逻辑运算以及数学函数。这些运算可以直接作用于标量、向量、矩阵或更高维数组。

算术运算

MATLAB支持标准的算术运算符,遵循矩阵运算规则:

  • 加法:+

    A + B  % 矩阵对应元素相加
    
  • 减法:-

    A - B  % 矩阵对应元素相减
    
  • 乘法:*

    A * B  % 矩阵乘法(非对应元素相乘)
    
  • 除法:/\

    A / B  % 近似等于A*inv(B)
    A \ B  % 近似等于inv(A)*B
    
  • 幂运算:^

    A^2  % 矩阵A的平方
    
  • 点运算(对应元素运算):., ./, .*, .^

    A .* B  % 对应元素相乘
    A ./ B  % 对应元素相除
    A .^ 2  % 每个元素平方
    

关系运算

关系运算符返回逻辑值(truefalse):

  • 等于:==

    A == B  % 判断对应元素是否相等
    
  • 不等于:~=

    A ~= B  % 判断对应元素是否不等
    
  • 大于:>

    A > B  % 判断对应元素是否大于
    
  • 小于:<

    A < B  % 判断对应元素是否小于
    
  • 大于等于:>=

    A >= B  % 判断对应元素是否大于等于
    
  • 小于等于:<=

    A <= B  % 判断对应元素是否小于等于
    

逻辑运算

逻辑运算符用于组合或操作逻辑值:

  • 与:&&&

    A & B  % 元素级逻辑与
    A && B % 标量逻辑与(短路运算)
    
  • 或:|||

    A | B  % 元素级逻辑或
    A || B % 标量逻辑或(短路运算)
    
  • 非:~

    ~A  % 逻辑非
    
  • 异或:xor

    xor(A, B)  % 逻辑异或
    

数学函数

MATLAB提供了丰富的内置数学函数:

  • 基本数学函数:

    abs(x)    % 绝对值
    sqrt(x)   % 平方根
    exp(x)    % 指数函数
    log(x)    % 自然对数
    log10(x)  % 常用对数
    
  • 三角函数:

  • MATLAB中余弦函数的输入方式

    在MATLAB中计算余弦值,需注意角度与弧度的转换。默认情况下,cos函数接受弧度作为输入。要计算70度的余弦值,需将角度转换为弧度或使用专门的角度函数。

    使用cosd函数直接输入角度

    MATLAB提供了cosd函数,可直接输入角度值进行计算:

    result = cosd(70);  % 计算70度的余弦值
    

    使用cos函数结合弧度转换

    若需使用cos函数,需先将角度转换为弧度。转换公式为:
    弧度 = 角度 × π / 180
    对应的MATLAB代码为:

    radians = 70 * pi / 180;  % 将70度转换为弧度
    result = cos(radians);    % 计算余弦值
    

    验证计算结果

    为验证两种方法的结果一致性,可运行以下代码:

    cosd_result = cosd(70);
    cos_result = cos(70 * pi / 180);
    disp(['cosd(70): ', num2str(cosd_result)]);
    disp(['cos(70° in radians): ', num2str(cos_result)]);
    

    输出应显示相同的结果(约0.3420)。

    注意事项

  • 函数选择:优先使用cosd简化角度计算。
  • 精度问题:浮点数计算可能存在微小差异,但在实际应用中可忽略。
  • 其他三角函数:类似地,sindtand等函数也支持直接角度输入。
  • 取整函数:

    round(x)  % 四舍五入
    floor(x)  % 向下取整
    ceil(x)   % 向上取整
    fix(x)    % 向零取整
    
  • 复数运算:

    real(z)   % 实部
    imag(z)   % 虚部
    angle(z)  % 相位角
    conj(z)   % 共轭复数
    
  • 统计函数:

    max(A), min(A)  % 最大值/最小值
    mean(A)         % 平均值
    median(A)       % 中位数
    std(A)          % 标准差
    
  • 矩阵运算函数:

    det(A)    % 行列式
    inv(A)    % 逆矩阵
    eig(A)    % 特征值
    rank(A)   % 矩阵秩
    

这些运算和函数可以组合使用,构建复杂的数学表达式和算法。MATLAB的向量化特性使得这些运算能够高效地作用于整个数组,无需显式循环。

1求下列表达式的值。

  1. x=1+2×cos(π)+3i

2,设三个复数a=3+4i,b=1+2i,c=2e,计算x=ab/c。

我们需要用得到点乘和三角函数输入,指数函数的输入:

1;(1)
x=1+2*cos(pi)+3i   //这里我们用的Π为pi;
(2)
z=2*sind(85)/1+exp(2) //这里用到三角函数直接输入数字度数和指数函数
2:
a=3+4i;b=1+2i;c=2*exp(pi*i/6);x=a*b/c

书写代码都是英文输入;注意分号和逗号的区分使用。

MATLAB中逗号与分号的区别

逗号(,)的主要用途

  • 分隔数组或矩阵中的元素:
    A = [1, 2, 3];  % 定义行向量,逗号分隔元素
    
  • 分隔函数输入参数:
    max(A, B);  % 逗号分隔函数的多个输入参数
    
  • 分隔同一行的多条命令:
    a = 1, b = 2;  % 逗号分隔两条赋值语句,均显示结果
    

分号(;)的主要用途

  • 抑制命令行的输出显示:
    C = [1; 2; 3];  % 定义列向量,分号分隔元素且不显示结果
    
  • 分隔矩阵的行:
    D = [1, 2; 3, 4];  % 分号分隔矩阵的不同行
    
  • 分隔多行命令(不显示中间结果):
    x = 1; y = 2;  % 分号分隔命令且不显示赋值结果
    

关键区别总结

  • 输出控制:逗号允许显示结果,分号抑制输出。
  • 矩阵构造:逗号分隔同一行元素,分号分隔不同行。
  • 代码风格:分号常用于脚本中减少冗余输出,逗号用于交互式调试时查看中间值。

示例对比:

% 逗号示例:显示所有结果
A = 1, B = 2, C = A + B  % 分号示例:仅显示最后结果
A = 1; B = 2; C = A + B

http://www.dtcms.com/a/392268.html

相关文章:

  • 小红书数据分析面试题及参考答案
  • SpringCloudStream:消息驱动组件
  • ret2text-CTFHub技能树
  • VirtualBox 7 虚拟机的硬盘如何扩大?
  • React新闻发布系统 权限列表开发
  • 23种设计模式之【策略模式】-核心原理与 Java 实践
  • 前端实战从零构建响应式井字棋游戏
  • Java中的equals()与hashCode()
  • 【绕过open_basedir】
  • 如何用户细分
  • 福彩双色球第2025109期篮球号码分析
  • 思考:客户端负载均衡和服务器负载均衡有什么区别?
  • 网络编程day04/05原始套接字
  • Yarn命令与npm命令的区别与联系(npm:Node.js的官方包管理工具;Yarn:Facebook开发的JavaScript包管理工具)
  • 【大语言模型 67】梯度压缩与稀疏通信
  • LeetCode第365题_水壶问题
  • OpenCV:DNN 模块实现图像风格迁移
  • 锤子助手插件功能六十四:禁用视频前置摄像头镜像
  • OpenHarmony NFC Tag驱动深度剖析:从HDF框架到NDEF读写全流程实战
  • 黑马头条_SpringCloud项目阶段四:多媒体短文章提交功能实现详解
  • TraceID串联数据孤岛:勤源全链路可观测性平台破解微服务“黑箱困境”
  • 随机梯度下降(SGD)算法及其在机器学习中的应用
  • 趣谈bug - the Norway problem
  • $attrs 和 $listeners 的使用场景和用法是什么?
  • [Linux]学习笔记系列 -- lib/radix-tree.c 基数树(Radix Tree) 整数键到指针的高效映射
  • Scikit-learn Python机器学习 - 回归分析算法 - 线性回归 (LinearRegression SGDRegressor)
  • ts的内置工具类型
  • 扫地车:守护多元场景的清洁 “多面手”
  • 力扣 136.只出现一次的数字
  • 【序列晋升】38 Spring Data MongoDB 的统一数据访问范式与实践