网站大量收购闲置独家精品文档,联系QQ:2885784924

提高Matlab代码效率(improveMatlabPerformance).pptx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
提高Matlab代码效率(improveMatlabPerformance)概要

Matlab code performance;Part I: Techniques for Improving Performance;Use the appropriate preallocation function for the kind of array you want to initialize: zeros for numeric arrays cell for character arrays Preallocating a Nondouble Matrix A = int8(zeros(100)); A = zeros(100, int8); ;Assigning Variables If you need to store data of a different type, it is advisable to create a new variable. Changing the class or array shape of an existing variable slows MATLAB down because it takes extra time to process. You should not assign a real value to a variable that already holds a complex value, and vice versa. Assigning a complex number to a variable that already holds a real number impacts the performance of your program. X = 23; . -- other code -- . X = A; % X changed from type double to char . -- other code --;Using Appropriate Logical Operators Operator Description , | Perform logical AND and OR on arrays element by element , || Perform logical AND and OR on scalar values with short-circuiting In if and while statements, it is more efficient to use the short-circuit operators, and ||: if (isnumeric(varargin{1})) (ischar(varargin{2}));Additional Tips on Improving Performance;Part II: Vectorization;Using Vectorization;Indexing Methods for Vectorization;Linear Indexing A = [11 12 13; 14 15 16; 17 18 19]; A(6) A([3,1,8]) A([3;1;8]) Note: Use the functions sub2ind and ind2sub to convert between subscripted and linear indices.;Logical Indexing MATLAB selects elements of A that contain a 1 in the corresponding position of the logical matrix: A = [11 12 13; 14 15 16; 17 18 19]; A(logical([0 0 1; 0 1 0; 1 1 1])) ;Array Operations;Logical Array Operations;Matrix Operations;Ordering, Setting, and Counting Operations;Functions Commonly Used in Vectorizing;Part III Matrix Indexing in MATLAB;Indexing Matrices with Two Subscripts A = magic(4) A(2,4) % Extract the element in row 2, column 4 A(2:4,1:2) A(3

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档