<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Loren on the Art of MATLAB</title>
	<atom:link href="http://blogs.mathworks.com/loren/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.mathworks.com/loren</link>
	<description>Loren Shure works on design of the MATLAB language at MathWorks. She writes here about once a week on MATLAB programming and related topics.</description>
	<lastBuildDate>Thu, 09 Feb 2012 04:19:21 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>Comment on Best Practices for Programming MATLAB by Mark</title>
		<link>http://blogs.mathworks.com/loren/2012/01/13/best-practices-for-programming-matlab/#comment-32978</link>
		<dc:creator>Mark</dc:creator>
		<pubDate>Thu, 09 Feb 2012 04:19:21 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/?p=330#comment-32978</guid>
		<description>With regards post http://blogs.mathworks.com/loren/2012/01/13/best-practices-for-programming-matlab/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+mathworks%2Floren+%28Loren+on+the+Art+of+MATLAB%29&amp;utm_content=Google+International#comment-32892

Loren, what you ideally want is a plugin architecture like Visual Studio whereby someone can write a ReSharper addin. Possibly one of the single most productivity and code-clarity beneficial addins I have ever used. Although the &quot;beast of Redmond&quot; is much derided I would urge any language developer to look at the functionality and usability of their IDE.</description>
		<content:encoded><![CDATA[<p>With regards post <a href="http://blogs.mathworks.com/loren/2012/01/13/best-practices-for-programming-matlab/?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+mathworks%2Floren+%28Loren+on+the+Art+of+MATLAB%29&#038;utm_content=Google+International#comment-32892" rel="nofollow">http://blogs.mathworks.com/loren/2012/01/13/best-practices-for-programming-matlab/?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+mathworks%2Floren+%28Loren+on+the+Art+of+MATLAB%29&#038;utm_content=Google+International#comment-32892</a></p>
<p>Loren, what you ideally want is a plugin architecture like Visual Studio whereby someone can write a ReSharper addin. Possibly one of the single most productivity and code-clarity beneficial addins I have ever used. Although the &#8220;beast of Redmond&#8221; is much derided I would urge any language developer to look at the functionality and usability of their IDE.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Intersecting Lines by Loren Shure</title>
		<link>http://blogs.mathworks.com/loren/2011/08/29/intersecting-lines/#comment-32977</link>
		<dc:creator>Loren Shure</dc:creator>
		<pubDate>Wed, 08 Feb 2012 14:40:37 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2011/08/29/intersecting-lines/#comment-32977</guid>
		<description>Val-
Thanks for the topic suggestion.

---Loren</description>
		<content:encoded><![CDATA[<p>Val-<br />
Thanks for the topic suggestion.</p>
<p>&#8212;Loren</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Path Management in Deployed Applications by Luis</title>
		<link>http://blogs.mathworks.com/loren/2008/08/11/path-management-in-deployed-applications/#comment-32976</link>
		<dc:creator>Luis</dc:creator>
		<pubDate>Wed, 08 Feb 2012 12:14:58 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2008/08/11/path-management-in-deployed-applications/#comment-32976</guid>
		<description>Hi Loren,
Sorry for the last reply, but the code that I talking about is the following: %#function pragma.
Thank you very much</description>
		<content:encoded><![CDATA[<p>Hi Loren,<br />
Sorry for the last reply, but the code that I talking about is the following: %#function pragma.<br />
Thank you very much</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Path Management in Deployed Applications by Luis</title>
		<link>http://blogs.mathworks.com/loren/2008/08/11/path-management-in-deployed-applications/#comment-32975</link>
		<dc:creator>Luis</dc:creator>
		<pubDate>Wed, 08 Feb 2012 12:10:44 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2008/08/11/path-management-in-deployed-applications/#comment-32975</guid>
		<description>Hi Loren,
I am developing a stand-alone application with the GUIDE tool. The application consists of a Graphical User Interface that allows the behavior of different algorithms to be evaluated, not only implemented now, also some that can be further developed. This application must be a stand-alone deployment, so the users can work with this open-source application and evaluates their own algorithms.
The idea is that the user can program their algorithms in a Matlab function template (.m file) (created by myself), and my application calls the template function modified by the user, evaluates the algorithm, shows the results and compares with other algorithms.
So, I used the function feval in order to evaluate the algorithms. The problem is that if I modify the template function, which is the idea of this application, the application does not detect the change in the .m template, and uses the original contents of the .m file.
I use this command: , because is the only way that my application can evaluate the function that contains the algorithms that I created. But, if I want to evaluate another function, developed by another user, it is not possible because it is not referenced in the main code has: .
So, my question is: Is it possible to call a function that has not been reported to the compiler by the  command? What other tools exist that help me to develop this application in order to call non-reported functions?
Any help would be appreciated.
Thank you very much.</description>
		<content:encoded><![CDATA[<p>Hi Loren,<br />
I am developing a stand-alone application with the GUIDE tool. The application consists of a Graphical User Interface that allows the behavior of different algorithms to be evaluated, not only implemented now, also some that can be further developed. This application must be a stand-alone deployment, so the users can work with this open-source application and evaluates their own algorithms.<br />
The idea is that the user can program their algorithms in a Matlab function template (.m file) (created by myself), and my application calls the template function modified by the user, evaluates the algorithm, shows the results and compares with other algorithms.<br />
So, I used the function feval in order to evaluate the algorithms. The problem is that if I modify the template function, which is the idea of this application, the application does not detect the change in the .m template, and uses the original contents of the .m file.<br />
I use this command: , because is the only way that my application can evaluate the function that contains the algorithms that I created. But, if I want to evaluate another function, developed by another user, it is not possible because it is not referenced in the main code has: .<br />
So, my question is: Is it possible to call a function that has not been reported to the compiler by the  command? What other tools exist that help me to develop this application in order to call non-reported functions?<br />
Any help would be appreciated.<br />
Thank you very much.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Calculating the Area Volume Under a Surface by Val Schmidt</title>
		<link>http://blogs.mathworks.com/loren/2011/06/13/calculating-the-area-under-a-surface/#comment-32974</link>
		<dc:creator>Val Schmidt</dc:creator>
		<pubDate>Tue, 07 Feb 2012 21:45:35 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2011/06/13/calculating-the-area-under-a-surface/#comment-32974</guid>
		<description>I recently had to do a similar task, however it was made more complicated in that the volume calculation was over a 3D surface in space rather than a 3D planar surface. My technique was to choose an integration step size, dz, in one dimension and use polyarea to calculate the area of the points within that step. The volume in the step is then simply the area times dz and one simply integrates (sums) over all steps. 

The method requires some trial and error regarding the step size, particularly near the start and stop when the data is a bit noisy (you need at least 3 points in each step). But it seems to work reasonably well and a modified version could be used to calculating the area under a planar surface.

I work with scattered data representing a surface frequently (usually seafloor mapping efforts) and are always looking for better ways of thinking about it. I usually grid the data to reduce the data density and noise in the measurements. 

There are some nuances to doing this that many folks forget. GRIDDATA is, in general, NOT the tool of choice, as it is an interpolating algorithm which, is better suited to fill in the gaps of sparsely sampled data. Indeed, if one were to try to quantify the uncertainty in the results of GRIDDATA, they should find it to be larger than that of their original data. 

There are plenty of Krigging functions on the FEX but this method assumes a-priori knowledge of the surface&#039;s roughness statistics (a variogram) which I am loath to guess. 
 
To my knowledge MATLAB does not have a simple average spacial gridding function. I have written my own with several variants for weighting of data points and estimating the uncertainty of the resulting grid from the standard deviation of the input data within each grid cell. These are standard techniques in seafloor mapping that are largely not addressed in MATLAB to my knowledge.

-Val</description>
		<content:encoded><![CDATA[<p>I recently had to do a similar task, however it was made more complicated in that the volume calculation was over a 3D surface in space rather than a 3D planar surface. My technique was to choose an integration step size, dz, in one dimension and use polyarea to calculate the area of the points within that step. The volume in the step is then simply the area times dz and one simply integrates (sums) over all steps. </p>
<p>The method requires some trial and error regarding the step size, particularly near the start and stop when the data is a bit noisy (you need at least 3 points in each step). But it seems to work reasonably well and a modified version could be used to calculating the area under a planar surface.</p>
<p>I work with scattered data representing a surface frequently (usually seafloor mapping efforts) and are always looking for better ways of thinking about it. I usually grid the data to reduce the data density and noise in the measurements. </p>
<p>There are some nuances to doing this that many folks forget. GRIDDATA is, in general, NOT the tool of choice, as it is an interpolating algorithm which, is better suited to fill in the gaps of sparsely sampled data. Indeed, if one were to try to quantify the uncertainty in the results of GRIDDATA, they should find it to be larger than that of their original data. </p>
<p>There are plenty of Krigging functions on the FEX but this method assumes a-priori knowledge of the surface&#8217;s roughness statistics (a variogram) which I am loath to guess. </p>
<p>To my knowledge MATLAB does not have a simple average spacial gridding function. I have written my own with several variants for weighting of data points and estimating the uncertainty of the resulting grid from the standard deviation of the input data within each grid cell. These are standard techniques in seafloor mapping that are largely not addressed in MATLAB to my knowledge.</p>
<p>-Val</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Transferring Data Between Two Computers Using MATLAB by Val Schmidt</title>
		<link>http://blogs.mathworks.com/loren/2011/05/27/transferring-data-between-two-computers-using-matlab/#comment-32973</link>
		<dc:creator>Val Schmidt</dc:creator>
		<pubDate>Tue, 07 Feb 2012 21:17:06 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2011/05/27/transferring-data-between-two-computers-using-matlab/#comment-32973</guid>
		<description>I agree with another poster - that tcp/ip functionality should be built into MATLAB core. 

Moreover, I think the ability to do this at this low level is great, but why must it always be so hard? Here&#039;s the level at which I think it should work:

One should be able to list all instances of MATLAB running on the local network (or specify an IP address for a specific computer). Then one should be able to select an instance and &quot;send&quot; it any MATLAB variable/matrix/object/structure/cellarray/etc. The receiver should be able to automatically accept objects sent from known senders or should be prompted for acceptance. All the details regarding the connection should be completely transparent. It should just work. 

Another feature should include the ability to share a workspace between two instances of MATLAB. In that way, users collaborating on a data set could work simultaneously and see each other&#039;s results. One could even select which plots should show up on the other person&#039;s workstation. 

My 2 cents.

Val</description>
		<content:encoded><![CDATA[<p>I agree with another poster &#8211; that tcp/ip functionality should be built into MATLAB core. </p>
<p>Moreover, I think the ability to do this at this low level is great, but why must it always be so hard? Here&#8217;s the level at which I think it should work:</p>
<p>One should be able to list all instances of MATLAB running on the local network (or specify an IP address for a specific computer). Then one should be able to select an instance and &#8220;send&#8221; it any MATLAB variable/matrix/object/structure/cellarray/etc. The receiver should be able to automatically accept objects sent from known senders or should be prompted for acceptance. All the details regarding the connection should be completely transparent. It should just work. </p>
<p>Another feature should include the ability to share a workspace between two instances of MATLAB. In that way, users collaborating on a data set could work simultaneously and see each other&#8217;s results. One could even select which plots should show up on the other person&#8217;s workstation. </p>
<p>My 2 cents.</p>
<p>Val</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Intersecting Lines by Val Schmidt</title>
		<link>http://blogs.mathworks.com/loren/2011/08/29/intersecting-lines/#comment-32972</link>
		<dc:creator>Val Schmidt</dc:creator>
		<pubDate>Tue, 07 Feb 2012 20:57:23 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2011/08/29/intersecting-lines/#comment-32972</guid>
		<description>These are all very interesting and helpful. 

I would be interested to see a similar post (and the comments) for finding the intersection between 2 lines in 3D space. Certainly not a straight-forward problem. Perhaps also the problem of finding a solution with some tolerance, or rather their closest point of intersection. 

Thanks,
Val</description>
		<content:encoded><![CDATA[<p>These are all very interesting and helpful. </p>
<p>I would be interested to see a similar post (and the comments) for finding the intersection between 2 lines in 3D space. Certainly not a straight-forward problem. Perhaps also the problem of finding a solution with some tolerance, or rather their closest point of intersection. </p>
<p>Thanks,<br />
Val</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on New MAT-File Functionality in R2011b by Val Schmidt</title>
		<link>http://blogs.mathworks.com/loren/2011/10/14/new-mat-file-functionality-in-r2011b/#comment-32971</link>
		<dc:creator>Val Schmidt</dc:creator>
		<pubDate>Tue, 07 Feb 2012 20:49:54 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2011/10/14/new-mat-file-functionality-in-r2011b/#comment-32971</guid>
		<description>I just stumbled across this and was thrilled until I read that one cannot access struct fields in this way. I parse and process very large data sets with many sets of fields and organizing them as structs for each set greatly eases the hassle of keeping track of what is what. I would very much like to see this work for structs such that I could access a field within a struct from a .mat file without having to load the whole thing. 

I&#039;ve experimented with memory mapped files assigned under the struct and this works sometimes but requires a whole directory of files (1 per field) and keeping the paths consistent has proved problematic.

So please register my vote for access to cell arrays and struct fields.

Thanks,

Val</description>
		<content:encoded><![CDATA[<p>I just stumbled across this and was thrilled until I read that one cannot access struct fields in this way. I parse and process very large data sets with many sets of fields and organizing them as structs for each set greatly eases the hassle of keeping track of what is what. I would very much like to see this work for structs such that I could access a field within a struct from a .mat file without having to load the whole thing. </p>
<p>I&#8217;ve experimented with memory mapped files assigned under the struct and this works sometimes but requires a whole directory of files (1 per field) and keeping the paths consistent has proved problematic.</p>
<p>So please register my vote for access to cell arrays and struct fields.</p>
<p>Thanks,</p>
<p>Val</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using GPUs in MATLAB by Sarah Wait Zaranek</title>
		<link>http://blogs.mathworks.com/loren/2012/02/06/using-gpus-in-matlab/#comment-32970</link>
		<dc:creator>Sarah Wait Zaranek</dc:creator>
		<pubDate>Tue, 07 Feb 2012 13:37:19 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/?p=346#comment-32970</guid>
		<description>@Sergi -

We have chosen to support CUDA and not Open CL due to the fact that CUDA currently has the only ecosystem with all of the libraries necessary for technical computing. This may change as open CL libraries advance and evolve. 

Cheers,
Sarah</description>
		<content:encoded><![CDATA[<p>@Sergi -</p>
<p>We have chosen to support CUDA and not Open CL due to the fact that CUDA currently has the only ecosystem with all of the libraries necessary for technical computing. This may change as open CL libraries advance and evolve. </p>
<p>Cheers,<br />
Sarah</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Dealing with Cells by Image editor</title>
		<link>http://blogs.mathworks.com/loren/2009/10/21/dealing-with-cells/#comment-32969</link>
		<dc:creator>Image editor</dc:creator>
		<pubDate>Tue, 07 Feb 2012 08:17:59 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.mathworks.com/loren/2009/10/21/dealing-with-cells/#comment-32969</guid>
		<description>abc, thanks for the update, 

&quot;% each element of ROI, tar and cor is 128×128
for i=1:47*2
if i&lt;=48
ROI{i} = logical(cor{i}) ;
else
ROI{i} = logical(tar{i-47}) ;
end
end&quot;

this seems right.</description>
		<content:encoded><![CDATA[<p>abc, thanks for the update, </p>
<p>&#8220;% each element of ROI, tar and cor is 128×128<br />
for i=1:47*2<br />
if i&lt;=48<br />
ROI{i} = logical(cor{i}) ;<br />
else<br />
ROI{i} = logical(tar{i-47}) ;<br />
end<br />
end&quot;</p>
<p>this seems right.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

