Matlab tips and tricks
matlab tips and tricks and ...
page overview:
I created this page as a vectorization helper but it grew to become my annotated Matlab reading cache. In order to motivate the DSP people out there, I am showing below how one can apply a window and scale factors on a pre-framed signal using no loops and minimal memory.
% For framing use buffer() or your own favorite
% Frame length: , Number of frames:
X = randn(,);
% Make a window (same for each frame)
w = hamming();
W = diag(sparse(w));
% This is the windowed signal, without loops
XW = W * X;
% Make a vector of random gain factors (one per frame)
g = rand(,);
G = diag(sparse(g))
% Now lets scale each frame by the corresponding gain factor
XG = X * G;
% Windowing and gain scaling is just left and right product with a diagonal.
XWG = W * X * G;
local links:
Note that some of the following documents are taken off of Mathworks' own support site; more specifically take a look at the technical notes section. Also a very good source of information is comp.soft-sys.matlab
- MATLAB Tensor Toolbox, 2005-12-07
Just as I was about to bite the bullet and write it myself, I finally came across a class for multidimensional tensors. The original page describing the toolbox can be found hereand the code here. If you are working with multi-linear forms you will definitely appreciate this. - GUI with MATLAB, 2005-06-15
A presentation on how to get started with GUIs. - Good MATLAB Programming Practices for the Non-Programmer, 2005-06-15
Some simple suggestions. - Writing Fast MATLAB Code, 2005-04-23
Once again your regular collection of standard tricks. - MATLAB Programming Style Guidelines, 2005-04-23
Not that you will ever start writing with such style but here is a bunch of suggestions. Well on page 9 it reads "Avoid cryptic code", well I don't think so. Can you deny that x'.'is so much more beautiful than conj(x) ??? I always prefer the second cause it's so easy to type ... ;) - MATLAB Tips and Tricks, 2005-04-23
We share the same name. A collection of a lot rather straightforward code. Take a look, you might find what you are looking for or might not ... - Why does LPC return a different prediction error than ARYULE?, 2004-03-16
This Matlab bug has caused me hours of frustration. Petr Fousek suffered too ... - MEX-files Guide, 2004-03-04
I still don't know if it is possible to operate 'inplace' on a mex array. Do I really need to reallocate memory for output? - Why do I receive a segmentation violation mentioning the toolbox cache when starting MATLAB?, 2004-03-03
Well you got to love this line: "Some customers have found that updating the driver for your video card can resolve the problem as well." Remember that we are talking about an XML toolbox cache file corruption ... - Numerical Computing with MATLAB, (pdf cached), (code cached), 2004-02-20
A very good read. Most of the chapters of the book along with the code are available online. - MATLAB Array Manipulation Tips and Tricks (pdf cached), (code cached), 2003-06-14
Again a very good read. - Floating Point, IEEE Standard unifies arithmetic model (pdf), 2003-06-14
- Why do I receive errors when overloading SUBSREF for types {} and . for MATLAB OOPS objects (31436) (pdf), 2003-06-11
If you have ever tried to write your own classes in Matlab chances are you run into the problems described in this article. - Simplify your code with comma-separated lists (pdf), 2003-06-08
Two very valuable cases are presented. The first is the fftshift() function which is all you need to know about the most flexible indexing method in Matlab. When you really understand fftshift() take a look at flipdim() and you are done. The second is the problems with subsref() / subsasgn() and the overloaded numel() functions in user-designed classes. - What's the big deal ? (pdf), 2003-06-08
The two main uses of deal are explained:
[C{:}] = deal(S.name); % The only way to initialize cell arrays
[S.name] = deal(C{:}); - Exploiting the comma-separated list(pdf), 2003-06-08
There is no exploiting going on here. This is a very easy reading. - Think Globally, Act Locally (pdf), 2003-06-08
A nice pattern for variable number number of input arguments is mentioned.
function heatmodel(varargin)
defaultValues = {100,72,350};
nonemptyIdx = ~cellfun(慽sempty�,varargin);Technorati 标记:defaultValues(nonemptyIdx) = varargin(nonemptyIdx);
[sz normalTemp hotTemp] = deal(defaultValues{:}); - Picking up the Pace with the MATLAB profiler (pdf), 2003-06-08
Some pretty interesting optimization tricks like the use of 1i variable, loop variable confinement and unrolling of complex arithmetic. Had MathWorks done this for all those cryptic "x" messages in profiler life would be easier ... - Is it possible to run MATLAB in the background under UNIX ? (86) (pdf), 2003-06-04
Guess what? It is! - Techniques for Debugging MATLAB M-files (1207) (pdf), m-files (zip), 2003-05-13
If you are a newbie and you're having problems with basic errors download the above m-files. Chances are your error is identified and solved in one of the examples. - What Is the EVAL Function, When Should I Use It, and How Can I Avoid It ? (1103) (pdf) 2003-03-19
Info about the dreaded triple quotes ''' in eval(). A really nasty way to disable quote's special functionality. In other languages one would expect to escape the quote by \' but not in Matlab. What you really need to know is that:
>> eval('disp(''''''This is a string'''''')')
'This is a string' - Is it possible to call a dynamic linked library from MATLAB ? (33513) (pdf), m-files (exe) 2003-03-09
Now one can simply wrap her code in a DLL and have it called from Matlab. Pointers to any type of Matlab variables can be defined straight in the workspace and can be passed to C/C++. Call by reference is now possible. - Printing and Exporting Guide (1206) (pdf) 2003-02-27
- Exporting Figures for Publication B (pdf), m-files (zip) 2003-02-27
Use this library in your next LaTeX paper ... - Matrix Indexing in Matlab (pdf)
- Memory management guide (1106) (pdf)
- Accelerating Matlab (R13) (pdf)
The new version of Matlab uses Just-In-Time code generation. Your for loops have never been that fast ! - Fast manipulation of multi-dimensional arrays in Matlab (pdf)
(Older version here) - How do I vectorize my code ? (1109) (pdf)
- Matlab array manipulation tips and tricks (pdf)
See up for the newest version of this document. - Matlab Tricks (pdf)
- comp.soft-sys.matlab.faq (pdf)
- Vectorization (pdf)
文章转载自 marios athineos 的 matlab tips and tricks and ...。
Matlab tips and tricks的更多相关文章
- (转) How to Train a GAN? Tips and tricks to make GANs work
How to Train a GAN? Tips and tricks to make GANs work 转自:https://github.com/soumith/ganhacks While r ...
- LoadRunner AJAX TruClient协议Tips and Tricks
LoadRunner AJAX TruClient协议Tips and Trickshttp://automationqa.com/forum.php?mod=viewthread&tid=2 ...
- Android Studio tips and tricks 翻译学习
Android Studio tips and tricks 翻译 这里是原文的链接. 正文: 如果你对Android Studio和IntelliJ不熟悉,本页提供了一些建议,让你可以从最常见的任务 ...
- Tips and Tricks for Debugging in chrome
Tips and Tricks for Debugging in chrome Pretty print On sources panel ,clicking on the {} on the bot ...
- [转]Tips——Chrome DevTools - 25 Tips and Tricks
Chrome DevTools - 25 Tips and Tricks 原文地址:https://www.keycdn.com/blog/chrome-devtools 如何打开? 1.从浏览器菜单 ...
- Nginx and PHP-FPM Configuration and Optimizing Tips and Tricks
原文链接:http://www.if-not-true-then-false.com/2011/nginx-and-php-fpm-configuration-and-optimizing-tips- ...
- 10 Essential TypeScript Tips And Tricks For Angular Devs
原文: https://www.sitepoint.com/10-essential-typescript-tips-tricks-angular/ ------------------------- ...
- WWDC笔记:2011 Session 125 UITableView Changes, Tips and Tricks
What’s New Automatic Dimensions - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSect ...
- Hex-Rays Decompiler Tips and tricks Volatile memory
https://www.hex-rays.com/products/decompiler/manual/tricks.shtml First of all, read the troubleshoot ...
随机推荐
- oracle 存储过程中调用存储过程
create procedure sp_name() begin ……… end 比如: create procedure pro_showdbs() show datebase; end //用ex ...
- 【GoLang】GoLang 错误处理 -- 使用异常的思路进行处理
go处理错误的另一种方式 go处理错误常见的方式是 err := funcReturningError() if err != nil { // 处理错误 } 然而因为过于繁琐而饱受诟病.下文简述另一 ...
- fib数列变种题目
对一个正整数作如下操作:如果是偶数则除以2,如果是奇数则加1,如此进行直到1时操作停止,求经过9次操作变为1的数有多少个? 第9次操作:结果1由2产生.1个被操作数8:结果2只能由4产生.1个被操作数 ...
- Mybatis中的in查询和foreach标签
Mybatis中的foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. foreach元素的属性主要有 item,index,collection,open,separato ...
- solr单机环境配置并包含外部单机zookeeper
首先和之前一样下载solr-5.3.1.tgz,然后执行下面命令释放文件并放置在/usr/目录下: $ .tgz $ /usr/ $ cd /usr/solr- 这个时候先不用启动solr,因为单机模 ...
- 21. javacript高级程序设计-Ajax与Comet
1. Ajax与Comet 1.1 XMLHttpRequest对象 IE5是第一款引入XHR对象的浏览器,IE5中是通过MSXML库中的一个ActiveX对象实现的.因此在IE中可能存在MSXML2 ...
- ffmpeg-20160510-git-bin
ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 f ...
- Enum:Game of Lines(POJ 3668)
画直线 题目大意:给定一些点集,要你找两点之间的连线不平行的有多少条 数据量比较少,直接暴力枚举,然后放到set查找即可 #include <iostream> #include < ...
- Android状态栏微技巧,带你真正意义上的沉浸式
记得之前有朋友在留言里让我写一篇关于沉浸式状态栏的文章,正巧我确实有这个打算,那么本篇就给大家带来一次沉浸式状态栏的微技巧讲解. 其实说到沉浸式状态栏这个名字我也是感到很无奈,真不知道这种叫法是谁先发 ...
- codeforces gym 100286 I iSharp (字符串模拟)
题目链接 给定一个字符串.输入是int& a*[]&, b, c*; 输出是 int&&[]* a;int& b;int&* c; 输入格式里逗号后面一 ...