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

铁岭网站seo漂亮html个人简历代码

铁岭网站seo,漂亮html个人简历代码,网站系统维护,wordpress 响应 主题一、基本技术1)MATLAB索引或引用(MATLAB Indexing or Referencing)在MATLAB中有三种基本方法可以选取一个矩阵的子阵。它们分别是下标法#xff0c;线性法和逻辑法(subscripted, linear,andlogical)。1.1)下标法非常简单#xff0c;看几个例子就好。A 6:12;A([3,5])ans 8 10…一、基本技术1)MATLAB索引或引用(MATLAB Indexing or Referencing)在MATLAB中有三种基本方法可以选取一个矩阵的子阵。它们分别是下标法线性法和逻辑法(subscripted, linear,andlogical)。1.1)下标法非常简单看几个例子就好。A 6:12;A([3,5])ans 8 10A([3:2:end])ans 8 10 12A [11 14 17;12 15 18;13 1619];A(2:3,2)ans 15161.2)线性法二维矩阵以列优先顺序可以线性展开可以通过现行展开后的元素序号来访问元素。A [11 14 17;12 15 18;13 1619];A(6)ans 16A([3,1,8])ans 13 11 18A([3;1;8])ans 1311181.3)逻辑法用一个和原矩阵具有相同尺寸的0-1矩阵可以索引元素。在某个位置上为1表示选取元素否则不选。得到的结果是一个向量。A 6:10;A(logical([0 0 1 0 1]))ans 8 10A [1 2;3 4];B [1 0 0 1];A(logical(B))ans 1 42)数组操作和矩阵操作(Array Operations vs. MatrixOperations)对矩阵的元素一个一个孤立进行的操作称作数组操作而把矩阵视为一个整体进行的运算则成为矩阵操作。MATLAB运算符*,/,\,^都是矩阵运算而相应的数组操作则是.*,./, .\, .^A[1 0 ;0 1];B[0 1 ;1 0];A*B % 矩阵乘法ans 0 11 0A.*B % A和B对应项相乘ans 0 00 03)布朗数组操作(Boolean ArrayOperations)对矩阵的比较运算是数组操作也就是说是对每个元素孤立进行的因此其结果就不是一个“真”或者“假”而是一堆“真假”。这个结果就是布朗数组。D [-0.2 1.0 1.5 3.0 -1.0 4.23.14];D 0ans 0 1 1 1 0 11如果想选出D中的正元素D D(D0)D 1.0000 1.5000 3.0000 4.2000 3.1400除此之外MATLAB运算中会出现NaN,Inf,-Inf。对它们的比较参见下例InfInf返回真Inf1返回假NaNNaN返回假同时可以用isinfisnan判断用法可以顾名思义。在比较两个矩阵大小时矩阵必须具有相同的尺寸否则会报错。这是你用的上size和isequal,isequalwithequalnans(R13及以后)。4)从向量构建矩阵(Constructing Matrices fromVectors)在MATLAB中创建常数矩阵非常简单大家经常使用的是A ones(5,5)*10但你是否知道这个乘法是不必要的A 10;A A(ones(5,5))A 10 10 10 10 1010 10 10 10 1010 10 10 10 1010 10 10 10 1010 10 10 1010类似的例子还有v (1:5);n 3;M v(:,ones(n,1))M 1 1 12 2 23 3 34 4 45 5 5事实上上述过程还有一种更加容易理解的实现方法A repmat(10,[5 5]);M repmat([1:5], [1,3]);其中repmat的含义是把一个矩阵重复平铺生成较大矩阵。更多详细情况参见函数repmat和meshgrid。5)相关函数列表(Utility Functions)ones 全1矩阵zeros 全0矩阵reshape 修改矩阵形状repmat 矩阵平铺meshgrid 3维plot需要用到的XY网格矩阵ndgrid n维plot需要用到的XYZ...网格矩阵filter 一维数字滤波器当数组元素前后相关时特别有用。cumsum 数组元素的逐步累计cumprod 数组元素的逐步累计eye 单位矩阵diag 生成对角矩阵或者求矩阵对角线spdiags 稀疏对角矩阵gallery 不同类型矩阵库pascal Pascal矩阵hankel Hankel矩阵toeplitz Toeplitz矩阵二、扩充的例子6)作用于两个向量的矩阵函数假设我们要计算两个变量的函数FF(x,y) x*exp(-x^2 -y^2)我们有一系列x值保存在x向量中同时我们还有一系列y值。我们要对向量x上的每个点和向量y上的每个点计算F值。换句话说我们要计算对于给定向量x和y的所确定的网格上的F值。使用meshgrid我们可以复制x和y来建立合适的输入向量。然后可以使用第2节中的方法来计算这个函数。x (-2:.2:2);y (-1.5:.2:1.5);[X,Y] meshgrid(x, y);F X .* exp(-X.^2 -Y.^2);如果函数F具有某些性质你甚至可以不用meshgrid比如F(x,y) x*y 则可以直接用向量外积x (-2:2);y (-1.5:.5:1.5);x*y在用两个向量建立矩阵时在有些情况下稀疏矩阵可以更加有效地利用存储空间并实现有效的算法。我们将在第8节中以一个实例来进行更详细地讨论.7)排序、设置和计数(Ordering, Setting, and CountingOperations) 在迄今为止讨论过的例子中对向量中一个元素的计算都是独立 于同一向量的其他元素的。但是在许多应用中你要做的计算 则可能与其它元素密切相关。例如假设你用一个向量x来表示一 个集合。不观察向量的其他元素你并不知道某个元素是不是一 个冗余元素并应该被去掉。如何在不使用循环语句的情况下删除 冗余元素至少在现在并不是一个明显可以解决的问题。解决这类问题需要相当的智巧。以下介绍一些可用的基本工具max 最大元素min 最小元素sort 递增排序unique 寻找集合中互异元素(去掉相同元素)diff 差分运算符[X(2) - X(1), X(3) - X(2), ... X(n) -X(n-1)]find 查找非零、非NaN元素的索引值union 集合并intersect 集合交setdiff 集合差setxor 集合异或继续我们的实例消除向量中的多余元素。注意一旦向量排序后 任何多余的元素就是相邻的了。同时在任何相等的相邻元素在向量 diff运算时变为零。这是我们能够应用以下策略达到目的。我们现在 在已排序向量中选取那些差分非零的元素。% 初次尝试。不太正确!x sort(x(:));difference diff(x);y x(difference~0);这离正确结果很近了但是我们忘了diff函数返回向量的元素个数比 输入向量少1。在我们的初次尝试中没有考虑到最后一个元素也可能 是相异的。为了解决这个问题我们可以在进行差分之前给向量x加入 一个元素并且使得它与以前的元素一定不同。一种实现的方法是增 加一个NaN。% 最终的版本。x sort(x(:));difference diff([x;NaN]);y x(difference~0);我们使用(:)运算来保证x是一个向量。我们使用~0运算而不用find 函数因为find函数不返回NaN元素的索引值而我们操作中差分的最 后元素一定是NaN。这一实例还有另一种实现方式yunique(x);后者当然很简单但是前者作为一个练习并非无用它是为了练习使用 矢量化技术并示范如何编写你自己的高效代码。此外前者还有一个 作用Unique函数提供了一些超出我们要求的额外功能这可能降低代 码的执行速度。假设我们不只是要返回集合x而且要知道在原始的矩阵里每个相异元素 出现了多少个“复本”。一旦我们对x排序并进行了差分我们可以用 find来确定差分变化的位置。再将这个变化位置进行差分就可以得到 复本的数目。这就是diffof find ofdiff的技巧。基于以上的讨论 我们有% Find the redundancy in a vectorxx sort(x(:));difference diff([x;max(x)1]);count diff(find([1;difference]));y x(find(difference));plot(y,count)这个图画出了x中每个相异元素出现的复本数。注意在这里我们避开了 NaN因为find不返回NaN元素的索引值。但是作为特例NaN和Inf 的复本数可以容易地计算出来count_nans sum(isnan(x(:)));count_infs sum(isinf(x(:)));另一个用于求和或者计数运算的矢量化技巧是用类似建立稀疏矩阵的方 法实现的。这还将在第9节中作更加详细的讨论.8)稀疏矩阵结构(Sparse MatrixStructures)在某些情况下你可以使用稀疏矩阵来增加计算的效率。如果你构造一 个大的中间矩阵通常矢量化更加容易。在某些情况下你可以充分利 用稀疏矩阵结构来矢量化代码而对于这个中间矩阵不需要大的存储空 间。假设在上一个例子中你事先知道集合y的域是整数的子集{k1,k2,...kn}即y (1:n) k例如这样的数据可能代表一个调色板的索引值。然后你就可以对集 合中每个元素的出现进行计数(构建色彩直方图译者)。这是对上一 节中diffof find of diff技巧的一种变形。现在让我们来构造一个大的m xn矩阵A这里m是原始x向量中的元素数 n是集合y中的元素数。A(i,j) 1 if x(i) y(j)0 otherwise回想一下第3节和第4节你可能认为我们需要从x和y来构造矩阵A。如果 当然可以但要消耗许多存储空间。我们可以做得更好因为我们知道 矩阵A中的多数元素为0x中的每个元素对应的行上只有一个值为1。以下就是构造矩阵的方法(注意到y(j) kj根据以上的公式)x sort(x(:));A sparse(1:length(x), xk, 1, length(x),n);现在我们对A的列进行求和得到出现次数。count sum(A);在这种情况下我们不必明确地形成排序向量y因为我们事先知道y 1:n k.这里的关键是使用数据(也就是说用x控制矩阵A的结构)。由于x在 一个已知范围内取整数值我们可以更加有效地构造矩阵。假设你要给一个很大矩阵的每一列乘以相同的向量。使用稀疏矩阵不仅 可以节省空间并且要比在第5节介绍的方法更加快速.下面是它的工作 方式F rand(1024,1024);x rand(1024,1);% 对F的所有行进行点型乘法.Y F * diag(sparse(x));% 对F的所有列进行点型乘法.Y diag(sparse(x)) *F;我们充分利用矩阵乘法算符来执行大规模运算并使用稀疏矩阵以防止临 时变量变得太大。9)附加的例子(AdditionalExamples)下面的例子使用一些在本技术手册中讨论过的方法以及其它一些相关方 法。请尝试使用tic和toc(或tcputime和cputime-t)看一下速度加快 的效果。用于计算数组的双重for循环。使用的工具数组乘法优化前A magic(100);B pascal(100);for j 1:100for k 1:100;X(j,k) sqrt(A(j,k)) * (B(j,k) -1);endend优化后A magic(100);B pascal(100);X sqrt(A).*(B-1);用一个循环建立一个向量其元素依赖于前一个元素使用的工具FILTER, CUMSUM,CUMPROD优化前A 1;L 1000;for i 1:LA(i1) 2*A(i)1;end优化后L 1000;A filter([1],[1-2],ones(1,L1));如果你的向量构造只使用加法或乘法你可使用cumsum或cumprod函数。优化前n10000;V_B100*ones(1,n);V_B2100*ones(1,n);ScaleFactorrand(1,n-1);for i 2:nV_B(i) V_B(i-1)*(1ScaleFactor(i-1));endfori2:nV_B2(i) V_B2(i-1)3;end优化后n10000;V_A100*ones(1,n);V_A2 100*ones(1,n);ScaleFactorrand(1,n-1);V_Acumprod([1001ScaleFactor]);V_A2cumsum([1003*ones(1,n-1)]);向量累加每5个元素进行一次工具CUMSUM , 向量索引优化前% Use an arbitrary vector,xx 1:10000;y [];for n 5:5:length(x)y [y sum(x(1:n))];end优化后(使用预分配)x 1:10000;ylength (length(x) -mod(length(x),5))/5;% Avoid using ZEROS command duringpreallocationy(1:ylength) 0;for n 5:5:length(x)y(n/5) sum(x(1:n));end优化后(使用矢量化,不再需要预分配)x 1:10000;cums cumsum(x);y cums(5:5:length(x));操作一个向量当某个元素的后继元素为0时重复这个元素工具FIND, CUMSUM,DIFF任务我们要操作一个由非零数值和零组成的向量要求把零替换成为 它前面的非零数值。例如我们要转换下面的向量a2; b3; c5; d15; e11;x [a 0 0 0 b 0 0 c 0 0 0 0 d 0 e 0 0 0 00];为x [a a a a b b b c c c c c d d e e e e ee];解(diff和cumsum是反函数)valind find(x);x(valind(2:end)) diff(x(valind));x cumsum(x);将向量的元素累加到特定位置上工具SPARSE优化前% The values we are summing at designatedindicesvalues [20 15 45 50 75 10 15 15 35 4010];% The indices associated with the values are summedcumulativelyindices [2 4 4 1 3 4 2 1 3 31];totals zeros(max(indices),1);for n 1:length(indices)totals(indices(n)) totals(indices(n)) values(n);end优化后indices [2 4 4 1 3 4 2 1 3 31];totals full(sparse(indices,1,values));注意这一方法开辟了稀疏矩阵的新用途。在使用sparse命令创建稀疏矩阵 时它是对分配到同一个索引的所有值求和而不是替代已有的数值。这称 为向量累加是MATLAB处理稀疏矩阵的方式。
http://www.pierceye.com/news/285321/

相关文章:

  • 创建个人网站的流程沈阳德泰诺网站建设
  • 网站备案 接口开一个网站多少钱
  • 郑州网站制作公司哪家好公司网页怎么设计
  • 如何做好企业网站建设工作公众微信网站建设
  • 企业网站开发时间动效网站怎么做
  • 网站编辑是网页制作么表格制作excel下载
  • 网站开发 发表文章网站开发和移动开发
  • 建设银行网站的目的是什么意思展览策划
  • 没有网站如何做落地页wordpress 用户 购物
  • 谁做网站收录网站建设项目竞争性招标文件
  • 做淘客要有好的网站wordpress move
  • 做企业网站有前途吗网站的栏目设置
  • 免费购物网站专门教人做点心的网站
  • 佛山网站设计哪里好seo关于网站搜索排名关键词的标准评定
  • 化工行业网站模板网站上怎么做动画广告视频
  • 怎么查百度收录网站吗用旧技术做网站能过毕设么知乎
  • 容桂医疗网站建设怎样在网站做咨询医生挣钱
  • 响应式网站建设价格加盟网络营销推广公司
  • 营销型网站单页面360任意看地图网站
  • 易班班级网站建设展示PPTwordpress php 采集器
  • 网站的透明图片怎么做嘉兴网站托管
  • 宝安做棋牌网站建设哪家便宜wordpress 导出html5
  • 网页制作与网站建设的发展趋势设想wordpress必装插件
  • 网站模板下载百度云链接怎么做的学做粤菜的网站
  • 牛栏前网站建设整站优化推广品牌
  • 太原做网站找谁阳江公司做网站
  • 企业网站aspwordpress原生相册
  • 重庆网站建设哪家公司那家好企业宣传软文
  • 如何选择营销网站建设什么网站做优化最好?
  • 个人博客网站模板素材网站的运营方案