{"id":1363,"date":"2011-06-04T08:52:26","date_gmt":"2011-06-04T08:52:26","guid":{"rendered":"http:\/\/labrigger.com\/blog\/?p=1363"},"modified":"2011-06-04T08:52:26","modified_gmt":"2011-06-04T08:52:26","slug":"matlab-menagerie","status":"publish","type":"post","link":"http:\/\/labrigger.com\/blog\/2011\/06\/04\/matlab-menagerie\/","title":{"rendered":"MATLAB Menagerie"},"content":{"rendered":"<p align=\"center\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/labrigger.com\/blog\/wp-content\/uploads\/2011\/06\/libjacket1.png\" alt=\"\" title=\"Performance of LIBJACKET (GPU acceleration) for MATLAB compared to a CPU-based technology. Details at bottom of post.\" width=\"512\" height=\"362\" class=\"aligncenter size-full wp-image-1365\" srcset=\"http:\/\/labrigger.com\/blog\/wp-content\/uploads\/2011\/06\/libjacket1.png 512w, http:\/\/labrigger.com\/blog\/wp-content\/uploads\/2011\/06\/libjacket1-300x212.png 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/p>\n<p>There are several <a href=\"http:\/\/www.mathworks.com\/\">MATLAB<\/a>-related items to post, but individually they don&#8217;t amount to much, so I&#8217;ll just put them all together.<\/p>\n<p>Outside of <a href=\"http:\/\/www.mathworks.com\/matlabcentral\/\">MATLAB Central<\/a>, there are a lot of places to find useful MATLAB code and commentary. In particular, some labs have excellently curated MATLAB toolboxes and are willing to share with their friends. So ask around. No need to reinvent the wheel.<\/p>\n<p>As far as what&#8217;s publicly available, I&#8217;ve stumbled across a couple that have been handy. Blogger <a href=\"http:\/\/desk.stinkpot.org:8080\/tricks\/index.php\/category\/matlab\/\">Stinkpot writes very brief notes on MATLAB<\/a> sporadically. Items include <a href=\"http:\/\/desk.stinkpot.org:8080\/tricks\/index.php\/2009\/12\/move-x-axis-to-top-of-matlab-figure\/\">Moving the X-axis to the top of a plot<\/a> and <a href=\"http:\/\/desk.stinkpot.org:8080\/tricks\/index.php\/2006\/03\/insert-a-matlab-matrix-into-latex-automatically\/\">Inserting a MATLAB matrix in to LaTeX<\/a>.<\/p>\n<p>Peter Acklam offers <a href=\"http:\/\/home.online.no\/~pjacklam\/matlab\/software\/util\/fullindex.html\">a nicely organized list of MATLAB utilities<\/a>. Although some of the functions are quite old and are now included in MATLAB natively (<a href=\"http:\/\/home.online.no\/~pjacklam\/matlab\/software\/util\/matutil\/xkron.m\">e.g. the Kronecker tensor product<\/a>), others are fairly unique and may be useful to you. There are also somewhat obscure things like trigonometric functions using gradians (<a href=\"http:\/\/home.online.no\/~pjacklam\/matlab\/software\/util\/mathutil\/cosgrad.m\">e.g. cosgrad<\/a>).<\/p>\n<p><a href=\"http:\/\/xcorr.wordpress.com\/\">Xcorr<\/a> has had a couple of excellent posts recently on some perhaps obscure MATLAB functions. There is an excellent explanation and demo for each function. Highly recommended. Xcorr&#8217;s coverage of <a href=\"http:\/\/xcorr.wordpress.com\/2011\/05\/24\/loading-huge-matrices-in-matlab-with-memmapfile\/\">memmapfile<\/a> and <a href=\"http:\/\/xcorr.wordpress.com\/2011\/05\/26\/obscure-matlab-function-1-bsxfun\/\">bsxfun<\/a>.<\/p>\n<p>Finally, you might be interested in <a href=\"http:\/\/en.wikipedia.org\/wiki\/GPGPU\">GPU computing<\/a> with MATLAB. <a href=\"http:\/\/www.accelereyes.com\/\">AccelerEyes<\/a>&#8216; Libjacket is finally 1.0 (<a href=\"http:\/\/blog.accelereyes.com\/blog\/2011\/06\/01\/getting-more-from-gpu-computing\/\">link<\/a>). This uses NVIDIA hardware to accelerate MATLAB computations. The graph at the top of this post compares the performance of their software running on an NVIDIA Tesla C2050 to an alternative, CPU-based acceleration technology (Intel&#8217;s <a href=\"http:\/\/software.intel.com\/en-us\/articles\/intel-mkl\/\">Math Kernel Library<\/a>). Academic research has found similar advantages (<a href=\"http:\/\/www.ncbi.nlm.nih.gov\/pubmed\/19772385\">link<\/a>).<\/p>\n","protected":false},"excerpt":{"rendered":"<p align=\"center\">\n<p>There are several <a href=\"http:\/\/www.mathworks.com\/\">MATLAB<\/a>-related items to post, but individually they don&#8217;t amount to much, so I&#8217;ll just&#8230;<\/p>\n<div class=\"read-more\"><a href=\"http:\/\/labrigger.com\/blog\/2011\/06\/04\/matlab-menagerie\/\">Read More<\/a><\/div><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[25,26],"class_list":["post-1363","post","type-post","status-publish","format-standard","hentry","category-software","tag-analysis","tag-matlab"],"_links":{"self":[{"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/posts\/1363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/comments?post=1363"}],"version-history":[{"count":4,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/posts\/1363\/revisions"}],"predecessor-version":[{"id":1368,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/posts\/1363\/revisions\/1368"}],"wp:attachment":[{"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/media?parent=1363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/categories?post=1363"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/labrigger.com\/blog\/wp-json\/wp\/v2\/tags?post=1363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}