MATLAB初学者作业:标量、向量与矩阵运算实战
版权申诉
33 浏览量
更新于2024-09-05
收藏 15KB PDF 举报
"MATLAB作业(20211029210331).pdf"
这篇MATLAB作业涵盖了多个基本概念和技术,包括变量赋值、向量和矩阵生成、数学函数应用、向量方程计算、矩阵运算以及图形绘制。以下是详细的知识点解析:
1. **标量变量生成**:
- `a=10`:这是一个简单的整数赋值。
- `b=2.5*(10^23)`:这里用到了指数运算,生成了一个非常大的浮点数。
- `c=2+3*i`:创建了一个复数。
- `d=exp(j*2*pi/3)`:利用`exp`函数和复数`j`(或`i`)计算了复数的指数形式,结果是-1/2 + √3/2 * i。
2. **向量生成**:
- `aVec=[3.1415926]`:创建了一个包含单个元素的行向量。
- `bVec=[2.71828182]'`:转换数字为列向量。
- `cVec=5:-0.2:-5`:定义了一个等差序列,从5递减到-5,步长为-0.2。
- `dVec=logspace(0,1,101)`:生成一个对数空间中的向量,从10^0(即1)到10^1,包含101个点。
- `eVec='Hello'`:创建了一个字符向量。
3. **矩阵变量**:
- `aMat=2*ones(9,9)`:生成一个9x9的全2矩阵。
- `bMat=diag(B)`:从一维数组`B`创建一个对角矩阵。
- `cMat=reshape(C,10,10)`:将一维数组`C`重塑成10x10的矩阵。
- `dMat=NaN*ones(3,3)`:创建一个3x3的全NaN矩阵。
- `eMat=reshape(E,2,3)`:将数组`E`重塑成2x3的矩阵。
- `fMat=reshape(F,5,3)`:同样,将数组`F`重塑成5x3的矩阵。
4. **标量方程**:
- `x=1/(1+exp(-(a-15)/6))`:这是Sigmoid函数的表达式,常用于神经网络激活函数。
- `y=(sqrt(a)+b^(1/21))^pi`:涉及平方根、指数和幂运算。
- `z=log(real((c+d)*(c-d))*sin(a*pi/3))/(c*conj(c))`:包含了复数运算、取实部、对数、正弦和共轭运算。
5. **向量方程计算**:
- `xVec=1/(2.*pi.*(2.5.^2))*exp((-cVec.^2)./(2.*(2.5.^2)))`:这是一组高斯函数,通常用于概率分布或滤波器。
- `yVec=sqrt((aVec'.^2)+bVec.^2)`:向量的模运算,类似二维坐标系中点的距离公式。
- `zVec=log10(1./dVec)`:计算对数,这里用的是以10为底的对数。
6. **矩阵运算**:
- `xMat=(aVec*bVec)*(aMat^2)`:向量乘法后与矩阵的平方相乘。
- `yMat=bVec*aVec`:向量的点乘运算。
- `zMat=det(cMat)*((aMat*bMat)')`:计算矩阵`cMat`的行列式,然后与两个矩阵的乘积的转置相乘。
7. **一般运算及元素索引**:
- `cSum=sum(cMat)`:计算矩阵的总和。
- `eMean=mean(eMat,2)`:沿第二个维度计算矩阵的平均值。
- `eMat(1,:)=[111]`:修改矩阵的第一行。
- `cSub=cMat(2:9,2:9)`:提取矩阵的一个子矩阵。
- `lin=1:20; lin(2:2:end)=-lin(2:2:end)`:创建一个序列并修改偶数索引的元素。
- `r=rand(1,5); r(find(r<0.5))=0`:生成随机数,将小于0.5的元素设为0。
8. **图形绘制**:
- `twoLinePlot`部分展示了如何在MATLAB中画图,包括绘制两个函数(正弦和余弦),设置坐标轴标签,添加标题,以及设置图例的位置。
这些内容涵盖了MATLAB的基本操作,包括数值计算、矩阵处理、向量运算和图形绘制,是学习MATLAB编程的重要基础。
2023-03-01 上传
2021-10-30 上传
2021-10-30 上传
2021-10-30 上传
2021-10-30 上传
2021-10-14 上传
jishuyh
- 粉丝: 1
- 资源: 7万+