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

驻马店营销型网站建设长治市城乡建设局网站

驻马店营销型网站建设,长治市城乡建设局网站,南阳网站建站公司,河北省建设厅办事大厅网站矩阵的基本知识 矩阵概念 矩阵#xff08;Matrix#xff09;在数学中是一个由复数或实数组成的矩形阵列#xff0c;其元素按照行和列排列。矩阵的定义可以形式化地描述为#xff1a; 一个 m 行 n 列的矩阵是一个有序的数表#xff0c;其中包含 m*n 个数#xff0c;可以…矩阵的基本知识 矩阵概念 矩阵Matrix在数学中是一个由复数或实数组成的矩形阵列其元素按照行和列排列。矩阵的定义可以形式化地描述为 一个 m 行 n 列的矩阵是一个有序的数表其中包含 m*n 个数可以表示为 A [a_{ij}] 或 A (a_{ij}){m×n} 这里的 a{ij} 是位于矩阵第 i 行第 j 列的元素1 ≤ i ≤ m, 1 ≤ j ≤ n。 对于一个具体的 m×n 矩阵 A例如 1A 2| a11 a12 ... a1n | 3| a21 a22 ... a2n | 4| . . . . | 5| . . . . | 6| am1 am2 ... amn | 其中a11、a12,...,amn 分别是矩阵中的每个元素。 更正式地表述  如果一个矩阵有 m 行和 n 列则称它为一个 m × n 矩阵。当 m n 时矩阵 A 称为方阵Square Matrix特别地n阶方阵写作 A_n 或 A^n。若矩阵的元素都是实数则称该矩阵为实矩阵若元素均为复数则称为复矩阵。 同型矩阵 当矩阵AB的行数和列数都相同时我们称AB为同型矩阵。 转置矩阵 转置矩阵Transpose of a Matrix是将原矩阵的行和列互换位置得到的新矩阵。对于一个 m×n 的矩阵 A其转置矩阵记作 Aᵀ 或 AT是一个 n×m 的矩阵其中 Aᵀ 的第 i 行、第 j 列的元素等于原矩阵 A 的第 j 行、第 i 列的元素。 具体来说如果 A 是一个二维数组 1A | a11 a12 ... a1n | 2 | a21 a22 ... a2n | 3 | . . ... . | 4 | am1 am2 ... amn | 则 A 的转置矩阵 Aᵀ 将会是 1Aᵀ | a11 a21 ... am1 | 2 | a12 a22 ... am2 | 3 | . . ... . | 4 | a1n a2n ... amn | 数学上表示为如果 A(i,j) 是原矩阵中位于第 i 行第 j 列的元素则转置矩阵中的相应元素是 Aᵀ(j,i)。 单位矩阵 单位矩阵Identity Matrix是一种特殊的方阵它在数学和线性代数中扮演着至关重要的角色。单位矩阵通常用 I 或 E 表示并带有下标来表示其阶数例如对于一个 n 阶单位矩阵记为 In 或 En。 单位矩阵的定义如下 它是一个 n×n 的方阵。主对角线从左上角到右下角上的所有元素均为 1。其他位置即非主对角线上的元素全为 0。 例如一个 3 阶单位矩阵是这样的 1I3 | 1 0 0 | 2 | 0 1 0 | 3 | 0 0 1 | 向量的定义 在MATLAB中向量是一个一维数组可以包含数值或其他数据类型的元素。定义和创建向量有多种方法 直接输入法 行向量列数为1通过将元素用逗号或空格分隔并放在方括号内来创建行向量。 1rowVec [1, 2, 3, 4, 5]; % 这是一个行向量 列向量行数为1通过在元素之间使用分号(;)而不是逗号来创建列向量。 1colVec [1; 2; 3; 4; 5]; % 这是一个列向量 范围生成法 使用冒号(:)运算符可以快速生成一个等差序列的向量。 1seqVec 1:5; % 生成从1到5的行向量 2seqColVec [1:5]; % 生成从1到5的列向量 循环构造法 当需要动态地构建向量时可以使用循环结构。 1N 5; 2vec []; % 初始化为空向量 3for i 1:N 4 vec [vec, i]; % 或者使用 vec(end1) i; 来扩展向量 5end MATLAB中的向量默认是列优先存储的也就是说即使没有明确指定方向创建一个不包含分号的单行向量也是以列向量的形式存储在内存中。不过在显示时MATLAB会根据上下文自动调整输出格式使得向量看起来像是行向量或列向量。 向量的模的求法 计算每个元素的平方。将这些平方值相加。对结果取平方根。 用公式表示为如果向量 v [v1, v2, ..., vn]则其模长欧几里得范数为 1||v||_2 \sqrt{v_1^2 v_2^2 ... v_n^2} 矩阵的加减法 注只有同型矩阵才可以进行加减 矩阵加法 假设有两个同为m×n维的矩阵A和B要将它们相加直接在MATLAB命令行或者脚本文件中写入 1A [1 2; 3 4]; % 这是一个2x2的示例矩阵A 2B [5 6; 7 8]; % 这是一个与A相同维度的2x2的示例矩阵B 3C A B; % 计算矩阵A和B的和并将结果存储到C中 矩阵减法 类似地进行矩阵减法 1D A - B; % 计算矩阵A和B的差并将结果存储到D中 数与矩阵的乘法 在MATLAB中数标量与矩阵的乘法有两种情况 标量乘以矩阵将一个标量乘到矩阵的所有元素上。例如假设有一个2x2的矩阵A和一个标量s 1A [1 2; 3 4]; % 这是一个2x2的示例矩阵 2s 2; % 这是一个标量 3 4B s * A; % 计算标量s与矩阵A的乘积并将结果存储到B中 在这个例子中B将是 1B [2*1 2*2; 2 2*3 2*4] [2 4; 6 8]; 矩阵乘以标量同理也可以将矩阵乘以一个标量结果与上述相同。 1C A * s; % 计算矩阵A与标量s的乘积并将结果存储到C中 此时C也将是 1C [2 4; 6 8]; 矩阵与矩阵的乘法 在MATLAB中矩阵与矩阵的乘法遵循特定的规则前一个矩阵左侧矩阵的列数必须等于后一个矩阵右侧矩阵的行数。下面给出一个矩阵乘法的例子 1% 定义两个矩阵 A 和 B 2A [1 2; 3 4]; % 这是一个2x2的矩阵 3B [5 6; 7 8]; % 这是一个2x2的矩阵 4 5% 注意由于矩阵A和B都是2x2的它们不能直接进行矩阵乘法因为不符合矩阵乘法的维度要求。 6 7% 为了演示矩阵乘法我们重新定义一个适合于矩阵乘法的矩阵C 8C [1 2; 3 4; 5 6]; % 这是一个3x2的矩阵 9 10D [7 8 9; 10 11 12]; % 这是一个2x3的矩阵 11 12% 矩阵C和D可以相乘因为C有2列而D有2行。 13E C * D; 14 15% 输出结果 16disp(E); 计算结果矩阵E中的每个元素是通过将矩阵C的每一行与矩阵D的每一列对应元素进行逐个相乘并求和得到的。例如 E(1,1) C(1,1)D(1,1) C(1,2)D(2,1) 17 210 27E(1,2) C(1,1)D(1,2) C(1,2)D(2,2) 18 211 26E(1,3) C(1,1)D(1,3) C(1,2)D(2,3) 19 212 33...E(3,3) C(3,1)D(1,3) C(3,2)D(2,3) 59 612 117 所以整个结果矩阵E就是 1E [27 30 33; 2 61 68 75; 3 95 106 117]; 在这个例子中由于矩阵C是3x2的矩阵D是2x3的所以可以进行矩阵乘法并得到一个3x3的结果矩阵E。实际计算时每一个元素e_ij都是通过将矩阵C的第i行与矩阵D的第j列对应元素按顺序逐个相乘然后求和得到的。 但是如果尝试用原来的矩阵A和B进行矩阵乘法由于它们都是2x2的矩阵无法满足矩阵乘法的条件MATLAB会抛出错误不允许这样的操作。 注进行矩阵相乘时。必须满足前一个矩阵左矩阵的列数必须等于后一个矩阵右矩阵的行数。也就是说如果有一个 m×n 的矩阵 A 和一个 n×p 的矩阵 B则它们可以相乘得到一个 m×p 的矩阵 C。 矩阵的逆 矩阵的逆Matrix Inverse是指对于一个方阵即行数和列数相等的矩阵如果存在另一个同样大小的矩阵使得它们相乘的结果是单位矩阵那么这个矩阵就被称为原矩阵的逆矩阵。 特征值和特征向量 特征值Eigenvalue 给定一个 n 阶方阵 A如果存在非零向量 v 和标量 λ满足以下关系式 Av λv 则称 λ 是矩阵 A 的一个特征值Eigenvaluev 称为对应于特征值 λ 的特征向量Eigenvector。 换言之特征值描述了在经过矩阵变换后特定向量的方向不变但长度按一定比例伸缩的程度。这个特定的比例就是特征值。 特征向量Eigenvector 对于一个给定的特征值 λ其对应的特征向量 v 是一个非零向量在经过矩阵 A 的作用下只会发生长度变化而不会改变方向。换句话说特征向量是在矩阵乘法后仍然保持相同方向尽管可能有大小变化的向量。 总结来说对于矩阵 A 和非零向量 v 以及实数 λ当 Av λv 成立时λ 称为矩阵 A 的特征值v 称为对应的特征向量。寻找特征值和特征向量的过程通常涉及解一组线性代数方程组。 MATLAB中的向量 在MATLAB中向量可以被称为一维数组矩阵可以被称为二维数组 创建方法 在MATLAB中向量的创建方法主要有三种分别是直接输入法、冒号法和利用MATLAB函数创建。下面我们一一来进行介绍 直接输入法 向量元素需要用中括号“[ ]”括起来元素之间用空格、逗号、分号或按回车键Enter键分隔就可以创建对应的向量。 若元素之间用空格可以有多个空格、逗号分隔则创建的是行向量 若用分号、回车键分隔则创建的是列向量。注意这里的逗号和分号都是英文输入法下输入的不能用中文的逗号或分号 a [1 3 5] a [1,3,5] b [1;3;5] b [1     3     5] 冒号法最常用 我们可以利用命令A:step:B 来创建一个行向量。 其中A是起始值step是每次递增或递减的步长B是终止值不一定刚好停在这里。若step等于1则可以直接简写成A:B。 直接看上面的概念不够直观下面我们举几个例子大家根据例子来理解会很轻松。 1:2:7  % 每次增加2直到最后到了7 1:2:8  % 每次增加2到了7后如果再增加2的话结果等于9比8要大所以到了7就停止了。 0:0.1:1  % 每次增加0.1 0:0.01:1   % 每次增加0.01 1:1:100  % 步长为1时可以省略     1:100 1:10:3   % 从1开始增加10等于11比3还要大所以返回1 5:2:1  % A:step:B  若A B且步长step 0则会返回空的向量 10:-1:6   % 步长为-1因此会从10开始递减 10:-2:5  % 步长为-2从10开始递减到了6后如果再减去2就等于4比5还要小所以到了6就停止了。 10:-100:5    % 步长为-100,因为10-100 -90比5还要小所以返回10 10:-10:50  % 若A B且步长step 0则会返回空的向量。 1:0:2  % 若step 0则返回空的向量。 补充 上表中有三种情况都会导致MATLAB返回空的向量空的1×0 double行向量。怎么理解这个返回结果呢这个“1×0”指的是向量的维度你可以理解为1行0列即这个向量是空的不存在元素。在MATLAB中我们可以直接使用命令[ ]创建空的向量。 [] 利用MATLAB函数创建 linspace函数 两种用法区别在于是否给定第三个输入参数n如果我们不指定n则MATLAB会默认n100。 linspace(a,b): 该命令用来创建一个行向量向量中的第一个元素为a最后一个元素为b形成总数为100个元素的线性间隔的向量。 linspace (a,b,n): 该命令用来创建一个行向量向量中的第一个元素为a最后一个元素为b形成总数为n个元素的线性间隔的向量。 第一个数为1最后一个数为100整个向量构成了一个等差数列由10个元素组成 linspace(1,100,10) [1 12 23 34 45 56 67 78 89 100] 第一个数为0最后一个数为2*pi linspace(0,2*pi,10)  linspace(1,10)   % 如果不指定第三个输入参数n则默认生成100个元素的等差数列 linspace(100,1,10)   % 如果ab,则步长是负数 linspace (a,b,n)和冒号法a:step:b生成向量的区别 linspace不需要指定步长MATLAB会根据你给定的元素个数n自动计算出来而使用冒号法可以自己指定步长。 linspace生成的向量的最后一个元素一定是b而使用冒号法a:step:b生成的向量的最后元素不一定是b。 循环语句时冒号法使用的频率最高而在绘制函数图形时使用linspace得到的x轴的范围要比冒号法稍微准确一点。例如我们要绘制sin(x)在区间[0, 2]上的图形x的范围是0到 2 我们使用linspace(0,2*pi)生成的向量的最后一个元素一定是 2 如果使用冒号法令x0:0.1:2*pi那么x向量的最后一个元素和 2 有一个微小的差异当然如果我们将step取得更小例如取成0.01那么这个差异几乎可以忽略。 logspace函数(了解即可), 两种常见的用法 logspace(a,b)创建一个行向量其第一个元素为10^a最后一个元素为10^b形成总数为50个元素的等比数列向量。 logspace(a,b,n)创建一个行向量其第一个元素为最后一个元素为形成总数为n个元素的等比数列向量。 logspace(1,2) % 默认50个元素linspace函数默认是100个元素 logspace(1,2,10)  % 生成第一个数为10^1最后一个数为10^2包含10个元素的等比数列 logspace(1,3,5)  % 生成第一个元素为10^1最后一个元素为10^3包含5个元素的等比数列 logspace(log10(2),log10(1024),10)  % 第一个数为2最后一个数为102410个元素组成的等比数列 logspace(2,1,5)  % 第一个数为10^2最后一个数为10^15个元素组成的等比数列 向量元素引用 对向量元素的引用即提取向量指定位置的值有两种情形分别是提取向量中的单个元素和提取向量中的多个元素。 向量分为行向量和列向量它们在MATLAB中只有一个维度因此我们可以利用向量中包含的元素个数来描述一个向量的大小。 在MATLAB中向量的索引是从1开始的 在MATLAB中可以使用length函数或numel函数来计算向量中包含的元素个数。 a [2 4 8 16 32 64 128 256 512 1024]; length(a) 10 numel(a)10 单个元素引用 我们提取向量a中单个元素的方法很简单只需要利用a(ind)命令小括号中的ind就是你要提取的对应元素的索引。 注创建向量用中括号提取元素要用小括号 a [2 4 8 16 32 64 128 256 512 1024]; a(1)2    a(9)512 % a(11)   % 索引超出数组元素的数目(10)。 a([]) % 如果是提取空向量的话结果也为空。 % a(1.5)    % a(0)    % a(-1)    索引必须为正整数逻辑值 多个元素引用 利用向量的索引来同时提取多个位置的元素这时候只需要将ind设置成一个向量ind中放入我们想要提取的元素的索引然后使用a(ind)命令即可。 a [2 4 8 16 32 64 128 256 512 1024]; ind [1 3 5 7 9]; a(ind)           %a(ind)2 8 32 128 512  % 也可以直接简写成: a([1 3 5 7 9]) % 注意到1:2:9 [1 3 5 7 9] a(1:2:9)  % 提取a中奇数位置的元素 % 提取a中偶数位置元素 a(2:2:10) % 对于同一个位置的元素我们也可以提取多次 a [2 4 8 16 32 64 128 256 512 1024]; ind [1 2 2 3 3 3]; a(ind)  % 熟悉的话可以直接写成a([1 2 2 3 3 3]) 技巧 使用end索引 假如不知道向量a中有多少个元素也不使用length函数或者numel函数来计算向量中元素的个数那提取出a中奇数位置的元素可以用到一个特殊的关键字end。它有很多种用法在这里end可以用来替代向量的最后一个索引。 a [2 4 8 16 32 64 128 256 512 1024]; % 访问a中第五个至最后一个元素那么我们可以直接使用 a(5:end) % 我们还可以对end进行计算例如要访问a中第五个至倒数第三个元素 a(5:end-2) % 这里有一个易错点如果使用了end就不能先将要取元素的索引赋值给ind然后再调用 ind5:end      a(ind)       wrong a(5:end)   yes % 提取a中奇数位置的元素 a(1:2:end) 问题 将一个向量倒序例如原向量是[1 5 8 4]倒序后是[4 8 5 1] a[1 5 8 4] ba(end:-1:1) 元素的修改与删除 向量元素的修改 可以直接利用赋值的方法对引用位置的元素进行修改。 a [2 4 8 16 32 64 128 256 512 1024]; a(1) 4  % 第一个元素改成4 a([1,3]) [50 60] % 第1个位置元素改成50第3个位置元素改成60 % 赋值时左右两侧的元素个数要相同 % a(1:3) [5 6]   % 无法执行赋值因为左侧和右侧的元素数目不同。 % 如果右边为常数则将指定位置的元素全部变成这个常数 a(2:4) 100  % 第2到4号位置的元素改成100 a(13) 88  向量元素的删除 如果我们将等号右侧改为空向量[]则可以删除对应位置的元素。 a(1) [ ]  % 删除a的第一个元素 a(end-1:end) [ ]  % 删除a中最后两个元素 思考题下面哪些语句会报错 a [2 4 8 16 32 64 128 256 512 1024]; % a([1,3]) % a(1,3)   %提取第一行第三个的元素 % a([2,3]) % a(2,3)  %会报错 下面哪些语句会报错 % a [2 4 8 16 32]; % a([2,4]) 5 % a [2 4 8 16 32]; % a(8) 10     %a[2 4 8 16 32 0 0 10] % a [2 4 8 16 32]; % a(2,4) 16   %a[2 4 8 16 32 0 0 0 16 0] % a [2 4 8 16 32]; % a(10) []    %会报错矩阵超出索引范围 若有侵权请联系作者
http://www.pierceye.com/news/759059/

相关文章:

  • 房屋租赁网站开发意义新网站如何做排名
  • 钉钉如何做自己的网站银川企业网站建设
  • 做游戏女角色去衣的网站网站建设及售后服务的说明书
  • 微网站下载资料怎么做网站开发毕业设计任务书怎么写
  • ckplayer网站根目录泉州 网站制作
  • 中国建设银行网站江苏分行帮别人做网站收多少钱合适
  • 公司该建哪种网站带有互动的网站开发
  • 怎样进入谷歌网站怎么做一个简易网站
  • 邯郸网站优化公司集团公司简介模板
  • 网站的需求分析怎么写文山州住房建设网站
  • 广东网站开发费用动易的网站能否静态
  • 网站的后期维护php建设图书网站代码
  • 做营销网站制作外贸多语言网站建设
  • 广州做网站 信科网络wordpress优化宝塔
  • 深圳网站制作作枣庄做网站制作
  • 企业做网站方案建筑公司网站平台
  • 简单的企业网站phpwordpress 图标插件
  • 网页界面设计评分标准东营网站关键字优化
  • 手表网站背景素材玉山网站建设
  • 增城新塘网站建设温州网站推广效果
  • 东莞市住房建设局网站编程能干什么
  • asp做一个简单网站推广图片素材
  • 新网站一直不被收录wordpress 视频 广告
  • 网站建设费账务处理一个小胖子从网站做任务的网站故事
  • 国外被墙网站东营建设信息网最新消息
  • iphone下载网页视频北京百度seo排名公司
  • 怎么自己做网站免费的衡阳seo网站推广
  • 一键生成论文的网站做亚马逊有哪些网站可以清货
  • 一屏网站模板下载 迅雷下载 迅雷下载地址网站建设合并但与那个
  • 营销型网站四大功能吉林市网站制作