<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" 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/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Advanced Matlab</title>
	
	<link>http://www.advancedmcode.org</link>
	<description>Open Blog with: Engineering Solutions, Algorithms, Advanced Matlab Source Code and Science related contents</description>
	<lastBuildDate>Tue, 31 Aug 2010 09:42:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AdvancedMatlab" /><feedburner:info uri="advancedmatlab" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>AdvancedMatlab</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Gabor filters for Face Recognition</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/VZ4o-4-aw9k/gabor-filters-for-face-recognition.html</link>
		<comments>http://www.advancedmcode.org/gabor-filters-for-face-recognition.html#comments</comments>
		<pubDate>Tue, 31 Aug 2010 09:42:16 +0000</pubDate>
		<dc:creator>Luigi Rosa</dc:creator>
				<category><![CDATA[Image processing]]></category>
		<category><![CDATA[Gabor filters for Face Recognition]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3145</guid>
		<description><![CDATA[<!-- Easy AdSense V2.90 -->
<!-- Post[count: 3] -->
<div class="ezAdsense adsense adsense-leadin" style="text-align:center;margin:12px;"><script type="text/javascript"><!--
google_ad_client = "pub-0623065815925087";
/* 336x280, creato 11/07/09 */
google_ad_slot = "8615089795";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div>
<!-- Easy AdSense V2.90 -->









.: Click here to download :.
We propose a biometric face recognition system based on local features. Informative feature locations in the face image are located by Gabor filters, which gives us an automatic system that is not dependent on accurate detection of facial features. The feature locations are typically located at positions with high information [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/-4upLjMVphGmaGKcF5erha_1esk/0/da"><img src="http://feedads.g.doubleclick.net/~a/-4upLjMVphGmaGKcF5erha_1esk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/-4upLjMVphGmaGKcF5erha_1esk/1/da"><img src="http://feedads.g.doubleclick.net/~a/-4upLjMVphGmaGKcF5erha_1esk/1/di" border="0" ismap="true"></img></a></p><p><a title="Download now Matlab code" href="http://www.advancedsourcecode.com/facegaborprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/facegaborprotected.zip?referer=');"><strong>.: Click here to download :.</strong></a></p>
<p>We propose a biometric face recognition system based on local features. Informative feature locations in the face image are located by Gabor filters, which gives us an automatic system that is not dependent on accurate detection of facial features. The feature locations are typically located at positions with high information content (such as facial features), and at each of these positions we extract a feature vector consisting of Gabor coefficients.</p>
<p>Index Terms: face, recognition, Gabor filters, Gabor filtering, local  features, Gabor coefficients, face matching, face recognition,  			face verification, feature vector.</p>
<table id="table1" style="width: 100%;" border="0">
<tbody>
<tr>
<td colspan="2" width="20%"><img src="http://www.advancedsourcecode.com/images/facegabor.jpg" border="0" alt="" /></td>
<td colspan="2">
<div>
<p>Figure 1. Facial image</p>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>A simple and effective source code for Face  						Recognition Based on Local Features. All tests were performed on AT&amp;T database.</p>
</div>
</td>
</tr>
<tr>
<td width="12%"><a href="http://www.advancedsourcecode.com/facegaborprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/facegaborprotected.zip?referer=');"> <img src="http://www.advancedsourcecode.com/images/newlogo.gif" border="0" alt="" width="60" height="40" /></a></td>
<td colspan="3">
<div><a href="http://www.advancedsourcecode.com/facegaborprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/facegaborprotected.zip?referer=');">Demo code (protected  						P-files) available for performance evaluation.</a> Matlab  						Image Processing Toolbox is required.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div><strong>Release</strong></div>
</td>
<td colspan="2">
<div><strong>Date</strong></div>
</td>
<td width="41%">
<div><strong>Major features</strong></div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.0</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2005.12.27</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Face recognition based on local features</li>
<li>User-friendly GUI</li>
<li>Features localization by Gabor filters</li>
<li>Facial features detection</li>
<li><a href="http://www.advancedsourcecode.com/facegaborprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/facegaborprotected.zip?referer=');">Demo code (protected P-files) available for  							performance evaluation</a></li>
</ul>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>We recommend to check the secure connection to PayPal, in  						order to avoid any fraud.<br />
This donation has to be considered an encouragement to  						improve the code itself.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="business" type="hidden" value="luigi.rosa@tiscali.it" />
<input name="item_name" type="hidden" value="Face Recognition based on Local Features - AdvancedSourceCode.Com" />
<input name="amount" type="hidden" value="49.00" />
<input name="no_note" type="hidden" value="1" />
<input name="currency_code" type="hidden" value="EUR" />
<input name="tax" type="hidden" value="0" />
<input name="lc" type="hidden" value="US" />
<input name="bn" type="hidden" value="PP-DonationsBF" />
<input alt="Make your donation with PayPal" name="submit" src="http://www.advancedsourcecode.com/images/x-click-butcc-donate.gif" type="image" /> </form>
</td>
<td colspan="3">
<div>Face Recognition Based on Local Features &#8211; Release 1.0 &#8211; Click here for  						your donation. In order to obtain the source code you  						have to pay a little sum of money: 49 EUROS (less than  						68,6 U.S. Dollars).</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>Once you have done this, please email us  						<a href="mailto:luigi.rosa@tiscali.it?subject=-----%20Face%20Recognition%20Based%20on%20Local%20Features%201.0%20%20-----">luigi.rosa@tiscali.it</a><br />
As soon as possible (in a few days) you will receive our  						new release of Face Recognition Based on Local Features.</p>
<p>Alternatively, you can bestow using our banking  						coordinates:</p>
<table id="table2" style="width: 100%;" border="0">
<tbody>
<tr>
<td>
<div>Name :</div>
</td>
<td>
<div>Luigi Rosa</div>
</td>
</tr>
<tr>
<td>
<div>Address :</div>
</td>
<td>
<div>Via Centrale 35 67042 L&#8217;Aquila Italy</div>
</td>
</tr>
<tr>
<td>
<div>Bank name:</div>
</td>
<td>
<div>Poste Italiane</div>
</td>
</tr>
<tr>
<td>
<div>Bank address:</div>
</td>
<td>
<div>Viale Europa 190 00144 Roma Italy</div>
</td>
</tr>
<tr>
<td>
<div>IBAN (International Bank Account Number) :</div>
</td>
<td>
<div>IT-50-V-07601-03600-000058177916</div>
</td>
</tr>
<tr>
<td>
<div>BIC (Bank Identifier Code) :</div>
</td>
<td>
<div>BPPIITRRXXX</div>
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p>The authors have no relationship or partnership  				with The Mathworks. All the code provided is written in Matlab  				language (M-files and/or M-functions), with no dll or other  				protected parts of code (P-files or executables). The code was  				developed with Matlab 14 SP1. Matlab Image Processing Toolbox is required.  				The code provided has to be considered &#8220;as is&#8221; and it is without any kind of warranty. The  				authors deny any kind of warranty concerning the code as well  				as any kind of responsibility for problems and damages which may  				be caused by the use of the code itself including all parts of  				the source code.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;title=Gabor%20filters%20for%20Face%20Recognition&amp;bodytext=.%3A%20Click%20here%20to%20download%20%3A.%0D%0A%0D%0AWe%20propose%20a%20biometric%20face%20recognition%20system%20based%20on%20local%20features.%20Informative%20feature%20locations%20in%20the%20face%20image%20are%20located%20by%20Gabor%20filters%2C%20which%20gives%20us%20an%20automatic%20system%20that%20is%20not%20dependent%20on%20accurate" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_title=Gabor_20filters_20for_20Face_20Recognition_amp_bodytext=._3A_20Click_20here_20to_20download_20_3A._0D_0A_0D_0AWe_20propose_20a_20biometric_20face_20recognition_20system_20based_20on_20local_20features._20Informative_20feature_20locations_20in_20the_20face_20image_20are_20located_20by_20Gabor_20filters_2C_20which_20gives_20us_20an_20automatic_20system_20that_20is_20not_20dependent_20on_20accurate&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;title=Gabor%20filters%20for%20Face%20Recognition&amp;notes=.%3A%20Click%20here%20to%20download%20%3A.%0D%0A%0D%0AWe%20propose%20a%20biometric%20face%20recognition%20system%20based%20on%20local%20features.%20Informative%20feature%20locations%20in%20the%20face%20image%20are%20located%20by%20Gabor%20filters%2C%20which%20gives%20us%20an%20automatic%20system%20that%20is%20not%20dependent%20on%20accurate" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_title=Gabor_20filters_20for_20Face_20Recognition_amp_notes=._3A_20Click_20here_20to_20download_20_3A._0D_0A_0D_0AWe_20propose_20a_20biometric_20face_20recognition_20system_20based_20on_20local_20features._20Informative_20feature_20locations_20in_20the_20face_20image_20are_20located_20by_20Gabor_20filters_2C_20which_20gives_20us_20an_20automatic_20system_20that_20is_20not_20dependent_20on_20accurate&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;t=Gabor%20filters%20for%20Face%20Recognition" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_t=Gabor_20filters_20for_20Face_20Recognition&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;title=Gabor%20filters%20for%20Face%20Recognition" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_title=Gabor_20filters_20for_20Face_20Recognition&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;title=Gabor%20filters%20for%20Face%20Recognition&amp;annotation=.%3A%20Click%20here%20to%20download%20%3A.%0D%0A%0D%0AWe%20propose%20a%20biometric%20face%20recognition%20system%20based%20on%20local%20features.%20Informative%20feature%20locations%20in%20the%20face%20image%20are%20located%20by%20Gabor%20filters%2C%20which%20gives%20us%20an%20automatic%20system%20that%20is%20not%20dependent%20on%20accurate" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_title=Gabor_20filters_20for_20Face_20Recognition_amp_annotation=._3A_20Click_20here_20to_20download_20_3A._0D_0A_0D_0AWe_20propose_20a_20biometric_20face_20recognition_20system_20based_20on_20local_20features._20Informative_20feature_20locations_20in_20the_20face_20image_20are_20located_20by_20Gabor_20filters_2C_20which_20gives_20us_20an_20automatic_20system_20that_20is_20not_20dependent_20on_20accurate&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;title=Gabor%20filters%20for%20Face%20Recognition" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_title=Gabor_20filters_20for_20Face_20Recognition&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Gabor%20filters%20for%20Face%20Recognition%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Gabor_20filters_20for_20Face_20Recognition_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;t=Gabor%20filters%20for%20Face%20Recognition&opener=bm&amp;ei=UTF-8&amp;d=.%3A%20Click%20here%20to%20download%20%3A.%0D%0A%0D%0AWe%20propose%20a%20biometric%20face%20recognition%20system%20based%20on%20local%20features.%20Informative%20feature%20locations%20in%20the%20face%20image%20are%20located%20by%20Gabor%20filters%2C%20which%20gives%20us%20an%20automatic%20system%20that%20is%20not%20dependent%20on%20accurate" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_t=Gabor_20filters_20for_20Face_20Recognition_opener=bm_amp_ei=UTF-8_amp_d=._3A_20Click_20here_20to_20download_20_3A._0D_0A_0D_0AWe_20propose_20a_20biometric_20face_20recognition_20system_20based_20on_20local_20features._20Informative_20feature_20locations_20in_20the_20face_20image_20are_20located_20by_20Gabor_20filters_2C_20which_20gives_20us_20an_20automatic_20system_20that_20is_20not_20dependent_20on_20accurate&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Gabor%20filters%20for%20Face%20Recognition&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fgabor-filters-for-face-recognition.html&amp;t=Gabor%20filters%20for%20Face%20Recognition" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fgabor-filters-for-face-recognition.html_amp_t=Gabor_20filters_20for_20Face_20Recognition&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3145&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/VZ4o-4-aw9k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/gabor-filters-for-face-recognition.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/gabor-filters-for-face-recognition.html</feedburner:origLink></item>
		<item>
		<title>Free Open Source FEM Softwares</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/LzLxawDmN7k/free-open-source-fem-softwares.html</link>
		<comments>http://www.advancedmcode.org/free-open-source-fem-softwares.html#comments</comments>
		<pubDate>Thu, 26 Aug 2010 11:06:23 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[CAD]]></category>
		<category><![CDATA[FEM]]></category>
		<category><![CDATA[Free software]]></category>
		<category><![CDATA[structural analysys]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3123</guid>
		<description><![CDATA[
Contents

 Intro
 Code Aster
 ELMER
 Calculix
 More


Intro
This post shows a few interesting (and free) solutions structural engineers may find useful.
The common structural softwares for FEM analysis like Ansys, Abaqus, Nastran,etc.. have a license cost from 20&#8242;000 up to more than 100&#8242;000. If you are not a worker inside a great company or if you are [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/FSURaXmxzR99DcdN3EF_lf4RqZk/0/da"><img src="http://feedads.g.doubleclick.net/~a/FSURaXmxzR99DcdN3EF_lf4RqZk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/FSURaXmxzR99DcdN3EF_lf4RqZk/1/da"><img src="http://feedads.g.doubleclick.net/~a/FSURaXmxzR99DcdN3EF_lf4RqZk/1/di" border="0" ismap="true"></img></a></p><h2>
<span id="Contents"><h2><span style="font-size: medium;">Contents</span></h2></span>
<ul>
<li> <span style="font-size: small;"><a href="../../?p=3123&amp;preview=true#Intro">Intro</a></span></li>
<li> <span style="font-size: small;"><a href="../../?p=3123&amp;preview=true#Code_Aster">Code Aster</a></span></li>
<li> <span style="font-size: small;"><a href="../../?p=3123&amp;preview=true#ELMER">ELMER</a></span></li>
<li> <span style="font-size: small;"><a href="../../?p=3123&amp;preview=true#Calculix">Calculix</a></span></li>
<li> <span style="font-size: small;"><a href="../../?p=3123&amp;preview=true#More">More</a></span></li>
</ul>
</h2>
<span id="Intro"><h2>Intro</h2></span>
<p>This post shows a few interesting (and free) solutions structural engineers may find useful.</p>
<p>The common structural softwares for FEM analysis like Ansys, Abaqus, Nastran,etc.. have a license cost from 20&#8242;000 up to more than 100&#8242;000. If you are not a worker inside a great company or if you are not rich, you can not afford that.</p>
<p>Today on the web there are several free solutions, some of them have great potential, almost like commercial utilities. They are just a little harder to use, they are not the kind of user friendly softwares.</p>
<p>A complete list of the packages can be found here: <a href="http://en.wikipedia.org/wiki/List_of_finite_element_software_packages" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/List_of_finite_element_software_packages?referer=');"> http://en.wikipedia.org/wiki/List_of_finite_element_software_packages</a></p>
<p>A first attempt to link all fem free utilities into a single operating system has been made by J, Cugnoni with his <a href="http://www.caelinux.com/CMS/" onclick="pageTracker._trackPageview('/outgoing/www.caelinux.com/CMS/?referer=');">Caelinux</a>. Caelinux is an ubuntu linux version that contains many free fem utilities. Unfortunately the current version is the old ubuntu 9 and it can gives drivers issues with modern machines. Anyway all the packages in Caelinux can be installed on most linux platforms.</p>
<p>I report here my review about the 3 softwares that I consider  a good trade-off between usability/perfomances and capabilities.</p>
<span id="Code_Aster"><h2>Code Aster</h2></span>
<p><a href="http://www.code-aster.org/" onclick="pageTracker._trackPageview('/outgoing/www.code-aster.org/?referer=');"><cite>www.<strong>code</strong>-<strong>aster</strong>.org/</cite></a></p>
<p><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/Fem_Code_Aster.jpg"><img class="aligncenter size-full wp-image-3131" title="Fem_Code_Aster" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/Fem_Code_Aster.jpg" alt="" width="400" height="269" /></a></p>
<p><strong>Code_Aster</strong> is an Open Source <a title="Software package (installation)" href="http://en.wikipedia.org/wiki/Software_package_%28installation%29" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Software_package_28installation_29?referer=');">software package</a> for Civil and Structural Engineering <a title="Finite element analysis" href="http://en.wikipedia.org/wiki/Finite_element_analysis" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Finite_element_analysis?referer=');">finite element analysis</a> and numeric simulation in structural mechanics originally developed as an in-house application by the French company <a title="Électricité de France" href="http://en.wikipedia.org/wiki/%C3%89lectricit%C3%A9_de_France" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/_C3_89lectricit_C3_A9_de_France?referer=');">EDF</a>. It was released as <a title="Free software" href="http://en.wikipedia.org/wiki/Free_software" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Free_software?referer=');">free software</a> under the terms of the <a title="GNU General Public License" href="http://en.wikipedia.org/wiki/GNU_General_Public_License" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/GNU_General_Public_License?referer=');">GNU General Public License</a>, in October 2001.</p>
<p>Code aster can be compiled both on windows and linux, but since it can be integrated with the cad utility <a href="http://www.salome-platform.org/" onclick="pageTracker._trackPageview('/outgoing/www.salome-platform.org/?referer=');">SALOME</a>, it is better to use it on linux. A complete integrated package called SAlOME-MECA can be downloaded here: <a href="http://www.code-aster.org/V2/spip.php?article303" onclick="pageTracker._trackPageview('/outgoing/www.code-aster.org/V2/spip.php?article303&amp;referer=');">http://www.code-aster.org/V2/spip.php?article303</a></p>
<p>Code Aster is suitable for very complicated termo-mechanical analysis: it can take into account plasticity, non linear geometry, material state exchange, cracking and creep.</p>
<p>Unfortunately it take some time to learn how to use code aster. The solver takes as main input a python script that defines the kind of analysis , boundary conditions, time steps etc. To write this file is necessary a basic knowledge of FEM algorithms. A few samples for typical analysis are available on the web. The python library to write the input file is enormous and most of the doc is in french, this can be painful for someone. Two main utilities to simplify the Code_Aster input process are available: EFICAS that helps writing the input file and ASTK a job manager server.</p>
<span id="ELMER"><h2>ELMER</h2></span>
<p><span style="font-size: small;"><a href="http://www.csc.fi/english/pages/elmer" onclick="pageTracker._trackPageview('/outgoing/www.csc.fi/english/pages/elmer?referer=');">http://www.csc.fi/english/pages/elmer</a></span></p>
<p><span style="font-size: small;"><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/FEM_elmer.jpeg"><img class="aligncenter size-full wp-image-3132" title="FEM_elmer" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/FEM_elmer.jpeg" alt="" width="270" height="270" /></a><br />
</span></p>
<p><span style="font-size: small;">Elmer is an open source multiphysical simulation software developed by <a title="CSC's mainpage" href="http://www.csc.fi/english/index_html" target="_self" onclick="pageTracker._trackPageview('/outgoing/www.csc.fi/english/index_html?referer=');">CSC</a>. Elmer development was started 1995 in collaboration with Finnish Universities, research institutes and industry.</span></p>
<p><span style="font-size: small;">Elmer includes physical models of fluid dynamics, structural mechanics, electromagnetics, heat transfer and acoustics, for example. These are described by partial differential equations which Elmer solves by the Finite Element Method (FEM)</span></p>
<p><span style="font-size: small;">Among the three elmer is simplest to use. A nice GUI guides the user trough all the fem model construction. It also has a mesh package even if it doesn&#8217;t allow for many editings. With elmer is just so easy to realize multiphisics anaisys. It also has a good built-in material library that turn out to be very useful. An interactive post-processing tools allows to visualize results.</span></p>
<span id="Calculix"><h2>Calculix</h2></span>
<p><a href="http://www.calculix.de/" onclick="pageTracker._trackPageview('/outgoing/www.calculix.de/?referer=');">http://www.calculix.de/</a></p>
<p><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/FEM_Calculix.jpg"><img class="aligncenter size-full wp-image-3130" title="FEM_Calculix" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/08/FEM_Calculix.jpg" alt="" width="399" height="350" /></a></p>
<p><span style="font-size: small;"><span style="font-size: small;">CalculiX is a package designed to solve field problems. The method used is the finite element method.</span></span></p>
<p><span style="font-size: small;"><span style="font-size: small;">With CalculiX Finite Element Models can be build, calculated and post-processed. The pre- and post-processor is an interactive 3D-tool using the openGL API. The solver is able to do linear and non-linear calculations. Static, dynamic and thermal solutions are available. Both programs can be used independently. Because the solver makes use of the abaqus input format it is possible to use commercial pre-processors as well. In turn the pre-processor is able to write mesh related data for nastran, abaqus, ansys, code-aster and for the free-cfd codes duns, ISAAC and OpenFOAM. A vda CAD interface is available. The program is designed to run on Unix platforms like Linux and Irix computers but also on MS-Windows.</span></span></p>
<p><span style="font-size: small;"><span style="font-size: small;">The CalculiX package was developed by a team of enthusiasts in their raw spare time. They are employees of MTU Munich, an Aero Engine manufacturer in Germany which granted the publication.</span></span></p>
<p><span style="font-size: small;"><span style="font-size: small;">Calculix is made by two console applications: CCX which handles the computation and CGX which handles the graphical operations. Calculix offers steady and dynamics structural and fluid analysis and has one main peculiarity: it has the same<strong> Abaqus input file syntax.</strong></span></span></p>
<span id="More"><h2>More</h2></span>
<p>Do you use others utilities that should be included in the above list? just tell us in the comments.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;title=Free%20Open%20Source%20FEM%20Softwares&amp;bodytext=%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20Code%20Aster%0D%0A%09%20ELMER%0D%0A%09%20Calculix%0D%0A%09%20More%0D%0A%0D%0A%0D%0AIntro%0D%0AThis%20post%20shows%20a%20few%20interesting%20%28and%20free%29%20solutions%20structural%20engineers%20may%20find%20useful.%0D%0A%0D%0AThe%20common%20structural%20softwares%20for%20FEM%20analysis%20like%20Ansys%2C%20Abaqus%2C%20Nastran%2C" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_title=Free_20Open_20Source_20FEM_20Softwares_amp_bodytext=_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20Code_20Aster_0D_0A_09_20ELMER_0D_0A_09_20Calculix_0D_0A_09_20More_0D_0A_0D_0A_0D_0AIntro_0D_0AThis_20post_20shows_20a_20few_20interesting_20_28and_20free_29_20solutions_20structural_20engineers_20may_20find_20useful._0D_0A_0D_0AThe_20common_20structural_20softwares_20for_20FEM_20analysis_20like_20Ansys_2C_20Abaqus_2C_20Nastran_2C&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;title=Free%20Open%20Source%20FEM%20Softwares&amp;notes=%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20Code%20Aster%0D%0A%09%20ELMER%0D%0A%09%20Calculix%0D%0A%09%20More%0D%0A%0D%0A%0D%0AIntro%0D%0AThis%20post%20shows%20a%20few%20interesting%20%28and%20free%29%20solutions%20structural%20engineers%20may%20find%20useful.%0D%0A%0D%0AThe%20common%20structural%20softwares%20for%20FEM%20analysis%20like%20Ansys%2C%20Abaqus%2C%20Nastran%2C" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_title=Free_20Open_20Source_20FEM_20Softwares_amp_notes=_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20Code_20Aster_0D_0A_09_20ELMER_0D_0A_09_20Calculix_0D_0A_09_20More_0D_0A_0D_0A_0D_0AIntro_0D_0AThis_20post_20shows_20a_20few_20interesting_20_28and_20free_29_20solutions_20structural_20engineers_20may_20find_20useful._0D_0A_0D_0AThe_20common_20structural_20softwares_20for_20FEM_20analysis_20like_20Ansys_2C_20Abaqus_2C_20Nastran_2C&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;t=Free%20Open%20Source%20FEM%20Softwares" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_t=Free_20Open_20Source_20FEM_20Softwares&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;title=Free%20Open%20Source%20FEM%20Softwares" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_title=Free_20Open_20Source_20FEM_20Softwares&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;title=Free%20Open%20Source%20FEM%20Softwares&amp;annotation=%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20Code%20Aster%0D%0A%09%20ELMER%0D%0A%09%20Calculix%0D%0A%09%20More%0D%0A%0D%0A%0D%0AIntro%0D%0AThis%20post%20shows%20a%20few%20interesting%20%28and%20free%29%20solutions%20structural%20engineers%20may%20find%20useful.%0D%0A%0D%0AThe%20common%20structural%20softwares%20for%20FEM%20analysis%20like%20Ansys%2C%20Abaqus%2C%20Nastran%2C" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_title=Free_20Open_20Source_20FEM_20Softwares_amp_annotation=_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20Code_20Aster_0D_0A_09_20ELMER_0D_0A_09_20Calculix_0D_0A_09_20More_0D_0A_0D_0A_0D_0AIntro_0D_0AThis_20post_20shows_20a_20few_20interesting_20_28and_20free_29_20solutions_20structural_20engineers_20may_20find_20useful._0D_0A_0D_0AThe_20common_20structural_20softwares_20for_20FEM_20analysis_20like_20Ansys_2C_20Abaqus_2C_20Nastran_2C&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;title=Free%20Open%20Source%20FEM%20Softwares" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_title=Free_20Open_20Source_20FEM_20Softwares&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Free%20Open%20Source%20FEM%20Softwares%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Free_20Open_20Source_20FEM_20Softwares_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;t=Free%20Open%20Source%20FEM%20Softwares&opener=bm&amp;ei=UTF-8&amp;d=%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20Code%20Aster%0D%0A%09%20ELMER%0D%0A%09%20Calculix%0D%0A%09%20More%0D%0A%0D%0A%0D%0AIntro%0D%0AThis%20post%20shows%20a%20few%20interesting%20%28and%20free%29%20solutions%20structural%20engineers%20may%20find%20useful.%0D%0A%0D%0AThe%20common%20structural%20softwares%20for%20FEM%20analysis%20like%20Ansys%2C%20Abaqus%2C%20Nastran%2C" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_t=Free_20Open_20Source_20FEM_20Softwares_opener=bm_amp_ei=UTF-8_amp_d=_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20Code_20Aster_0D_0A_09_20ELMER_0D_0A_09_20Calculix_0D_0A_09_20More_0D_0A_0D_0A_0D_0AIntro_0D_0AThis_20post_20shows_20a_20few_20interesting_20_28and_20free_29_20solutions_20structural_20engineers_20may_20find_20useful._0D_0A_0D_0AThe_20common_20structural_20softwares_20for_20FEM_20analysis_20like_20Ansys_2C_20Abaqus_2C_20Nastran_2C&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Free%20Open%20Source%20FEM%20Softwares&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffree-open-source-fem-softwares.html&amp;t=Free%20Open%20Source%20FEM%20Softwares" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffree-open-source-fem-softwares.html_amp_t=Free_20Open_20Source_20FEM_20Softwares&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3123&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/LzLxawDmN7k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/free-open-source-fem-softwares.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/free-open-source-fem-softwares.html</feedburner:origLink></item>
		<item>
		<title>Facial Gender Recognition Using GA</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/0oQE64hTpTc/facial-gender-recognition-using-ga.html</link>
		<comments>http://www.advancedmcode.org/facial-gender-recognition-using-ga.html#comments</comments>
		<pubDate>Wed, 28 Jul 2010 07:53:15 +0000</pubDate>
		<dc:creator>Luigi Rosa</dc:creator>
				<category><![CDATA[Image processing]]></category>
		<category><![CDATA[algorithm]]></category>
		<category><![CDATA[Algorithms]]></category>
		<category><![CDATA[female]]></category>
		<category><![CDATA[GA]]></category>
		<category><![CDATA[gender]]></category>
		<category><![CDATA[Genetic]]></category>
		<category><![CDATA[male]]></category>
		<category><![CDATA[Matlab source code]]></category>
		<category><![CDATA[recognition]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3024</guid>
		<description><![CDATA[.: Click here to  download :.
Recognizing human gender plays an important role in many human computer interaction (HCI) areas. For example, search engines need an image filter to determine the gender of people in images from the Internet; demographic research can use gender information extracted from images to count the number of men and [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/T46jPejg6PHK8wLlQOPlc1MJ-oc/0/da"><img src="http://feedads.g.doubleclick.net/~a/T46jPejg6PHK8wLlQOPlc1MJ-oc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/T46jPejg6PHK8wLlQOPlc1MJ-oc/1/da"><img src="http://feedads.g.doubleclick.net/~a/T46jPejg6PHK8wLlQOPlc1MJ-oc/1/di" border="0" ismap="true"></img></a></p><p><a title="Download now Matlab code" href="http://www.advancedsourcecode.com/gagenderprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/gagenderprot.zip?referer=');"><strong>.: Click here to  download :.</strong></a></p>
<p>Recognizing human gender plays an important role in many human computer interaction (HCI) areas. For example, search engines need an image filter to determine the gender of people in images from the Internet; demographic research can use gender information extracted from images to count the number of men and women entering a shopping mall or movie theater; a “smart building”might use gender for surveillance and control of access to certain areas. Besides these kinds of broad applications, gender recognition itself is an important research topic in both psychology and computer vision.</p>
<p>In psychology studies for HCI, the main focus is about how humans discriminate between males and females and what kind of features are more discriminative. A successful gender classification approach can boost the performance of many other applications including face recognition and smart human-computer interfaces. Despite its importance, it has received relatively little attention in the literature.</p>
<p>We have developed a system for facial gender recognition that is capable to extract from image most informative features using an approach based on genetic  algorithms.</p>
<p>The code has been tested with <a href="http://scien.stanford.edu/pages/labsite/2001/ee368/projects2001/dropbox/project16/med_students.tar.gz" target="_blank" onclick="pageTracker._trackPageview('/outgoing/scien.stanford.edu/pages/labsite/2001/ee368/projects2001/dropbox/project16/med_students.tar.gz?referer=');">Stanford Medical Student Face Database</a> achieving <strong>an excellent recognition rate of 93.60%</strong> (200 female images and 200 male images, 90% used for training and 10% used for testing, hence there are 360 training images and 40 test images in total randomly selected and no overlap exists between the training and test images).</p>
<p>Index Terms: Matlab, source, code, gender, recognition,  male, female, genetic, algorithm, algorithms, GA.</p>
<table id="table1" style="width: 100%;" border="0">
<tbody>
<tr>
<td colspan="2" width="40%"><img src="http://www.advancedsourcecode.com/images/image_face.jpg" border="0" alt="" width="216" height="289" /></td>
<td colspan="2">
<div>
<p>Figure 1. Facial image</p>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>A simple and effective source code for  Gender Recognition Based on Genetic Algorithms.</p>
</div>
</td>
</tr>
<tr>
<td width="12%"><a href="http://www.advancedsourcecode.com/gagenderprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/gagenderprot.zip?referer=');"> <img src="http://www.advancedsourcecode.com/images/newlogo.gif" border="0" alt="" width="60" height="40" /></a></td>
<td colspan="3">
<div><a href="http://www.advancedsourcecode.com/gagenderprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/gagenderprot.zip?referer=');">Demo code (protected                         P-files) available for performance evaluation.</a> Matlab Image Processing Toolbox is required.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div><strong>Release</strong></div>
</td>
<td colspan="2">
<div><strong>Date</strong></div>
</td>
<td width="41%">
<div><strong>Major features</strong></div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.0</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2010.05.18</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Gender recognition using genetic  algorithms</li>
<li>High recognition rate</li>
<li>Fast and optimized implementation</li>
<li>Easy and intuitive GUI</li>
<li><a href="http://www.advancedsourcecode.com/gagenderprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/gagenderprot.zip?referer=');">Demo code (protected P-files) available for                             performance evaluation</a></li>
</ul>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>We recommend to check the secure  connection to PayPal, in                          order to avoid any fraud.<br />
This donation has to be considered an  encouragement to                          improve the code itself.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="business" type="hidden" value="luigi.rosa@tiscali.it" />
<input name="item_name" type="hidden" value="Gender Recognition Based on Genetic  Algorithms - AdvancedSourceCode.Com" />
<input name="amount" type="hidden" value="200.00" />
<input name="no_note" type="hidden" value="1" />
<input name="currency_code" type="hidden" value="EUR" />
<input name="tax" type="hidden" value="0" />
<input name="lc" type="hidden" value="US" />
<input name="bn" type="hidden" value="PP-DonationsBF" />
<input alt="Make your donation with PayPal" name="submit" src="http://www.advancedsourcecode.com/images/x-click-butcc-donate.gif" type="image" /> </form>
</td>
<td colspan="3">
<div>Gender Recognition Based on Genetic Algorithms &#8211;  Click here for                         your donation. In order to obtain the source  code you                          have to pay a little sum of money: 200 EUROS  (less                         than 280 U.S. Dollars).</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>Once you have done this, please email us                          <a href="mailto:luigi.rosa@tiscali.it?subject=-----%20Gender%20Recognition%20Based%20on%20Genetic%20Algorithms%20%20-----">luigi.rosa@tiscali.it</a><br />
As soon as possible (in a few days) you will  receive our                          new release of Gender Recognition Based on  Genetic Algorithms.</p>
<p>Alternatively, you can bestow using our banking                          coordinates:</p>
<table id="table2" style="width: 100%;" border="0">
<tbody>
<tr>
<td>
<div>Name :</div>
</td>
<td>
<div>Luigi Rosa</div>
</td>
</tr>
<tr>
<td>
<div>Address :</div>
</td>
<td>
<div>Via  Centrale 35 67042 L&#8217;Aquila Italy</div>
</td>
</tr>
<tr>
<td>
<div>Bank name:</div>
</td>
<td>
<div>Poste  Italiane</div>
</td>
</tr>
<tr>
<td>
<div>Bank  address:</div>
</td>
<td>
<div>Viale  Europa 190 00144 Roma Italy</div>
</td>
</tr>
<tr>
<td>
<div>IBAN  (International Bank Account Number) :</div>
</td>
<td>
<div>IT-50-V-07601-03600-000058177916</div>
</td>
</tr>
<tr>
<td>
<div>BIC (Bank  Identifier Code) :</div>
</td>
<td>
<div>BPPIITRRXXX</div>
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p>The authors have no relationship or partnership                  with The Mathworks. All the code provided is written in  Matlab                  language (M-files and/or M-functions), with no dll or  other                  protected parts of code (P-files or executables). The  code was                  developed with Matlab 2006a. Matlab Image Processing  Toolbox is required.                 The code provided has to be considered &#8220;as is&#8221; and it is  without any kind of warranty. The                  authors deny any kind of warranty concerning the code as  well                  as any kind of responsibility for problems and damages  which may                  be caused by the use of the code itself including all  parts of                  the source code.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;title=Facial%20Gender%20Recognition%20Using%20GA%20&amp;bodytext=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ARecognizing%20human%20gender%20plays%20an%20important%20role%20in%20many%20human%20computer%20interaction%20%28HCI%29%20areas.%20For%20example%2C%20search%20engines%20need%20an%20image%20filter%20to%20determine%20the%20gender%20of%20people%20in%20images%20from%20the%20Internet%3B%20demograp" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_title=Facial_20Gender_20Recognition_20Using_20GA_20_amp_bodytext=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ARecognizing_20human_20gender_20plays_20an_20important_20role_20in_20many_20human_20computer_20interaction_20_28HCI_29_20areas._20For_20example_2C_20search_20engines_20need_20an_20image_20filter_20to_20determine_20the_20gender_20of_20people_20in_20images_20from_20the_20Internet_3B_20demograp&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;title=Facial%20Gender%20Recognition%20Using%20GA%20&amp;notes=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ARecognizing%20human%20gender%20plays%20an%20important%20role%20in%20many%20human%20computer%20interaction%20%28HCI%29%20areas.%20For%20example%2C%20search%20engines%20need%20an%20image%20filter%20to%20determine%20the%20gender%20of%20people%20in%20images%20from%20the%20Internet%3B%20demograp" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_title=Facial_20Gender_20Recognition_20Using_20GA_20_amp_notes=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ARecognizing_20human_20gender_20plays_20an_20important_20role_20in_20many_20human_20computer_20interaction_20_28HCI_29_20areas._20For_20example_2C_20search_20engines_20need_20an_20image_20filter_20to_20determine_20the_20gender_20of_20people_20in_20images_20from_20the_20Internet_3B_20demograp&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;t=Facial%20Gender%20Recognition%20Using%20GA%20" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_t=Facial_20Gender_20Recognition_20Using_20GA_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;title=Facial%20Gender%20Recognition%20Using%20GA%20" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_title=Facial_20Gender_20Recognition_20Using_20GA_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;title=Facial%20Gender%20Recognition%20Using%20GA%20&amp;annotation=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ARecognizing%20human%20gender%20plays%20an%20important%20role%20in%20many%20human%20computer%20interaction%20%28HCI%29%20areas.%20For%20example%2C%20search%20engines%20need%20an%20image%20filter%20to%20determine%20the%20gender%20of%20people%20in%20images%20from%20the%20Internet%3B%20demograp" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_title=Facial_20Gender_20Recognition_20Using_20GA_20_amp_annotation=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ARecognizing_20human_20gender_20plays_20an_20important_20role_20in_20many_20human_20computer_20interaction_20_28HCI_29_20areas._20For_20example_2C_20search_20engines_20need_20an_20image_20filter_20to_20determine_20the_20gender_20of_20people_20in_20images_20from_20the_20Internet_3B_20demograp&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;title=Facial%20Gender%20Recognition%20Using%20GA%20" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_title=Facial_20Gender_20Recognition_20Using_20GA_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Facial%20Gender%20Recognition%20Using%20GA%20%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Facial_20Gender_20Recognition_20Using_20GA_20_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;t=Facial%20Gender%20Recognition%20Using%20GA%20&opener=bm&amp;ei=UTF-8&amp;d=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ARecognizing%20human%20gender%20plays%20an%20important%20role%20in%20many%20human%20computer%20interaction%20%28HCI%29%20areas.%20For%20example%2C%20search%20engines%20need%20an%20image%20filter%20to%20determine%20the%20gender%20of%20people%20in%20images%20from%20the%20Internet%3B%20demograp" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_t=Facial_20Gender_20Recognition_20Using_20GA_20_opener=bm_amp_ei=UTF-8_amp_d=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ARecognizing_20human_20gender_20plays_20an_20important_20role_20in_20many_20human_20computer_20interaction_20_28HCI_29_20areas._20For_20example_2C_20search_20engines_20need_20an_20image_20filter_20to_20determine_20the_20gender_20of_20people_20in_20images_20from_20the_20Internet_3B_20demograp&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Facial%20Gender%20Recognition%20Using%20GA%20&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Ffacial-gender-recognition-using-ga.html&amp;t=Facial%20Gender%20Recognition%20Using%20GA%20" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Ffacial-gender-recognition-using-ga.html_amp_t=Facial_20Gender_20Recognition_20Using_20GA_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3024&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/0oQE64hTpTc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/facial-gender-recognition-using-ga.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/facial-gender-recognition-using-ga.html</feedburner:origLink></item>
		<item>
		<title>Debugging, Profiling, &amp; Style Guidelines in Matlab</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/AB01O11F49w/debugging-profiling-style-guidelines-in-matlab.html</link>
		<comments>http://www.advancedmcode.org/debugging-profiling-style-guidelines-in-matlab.html#comments</comments>
		<pubDate>Thu, 22 Jul 2010 07:17:43 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[Code Optimization]]></category>
		<category><![CDATA[break point]]></category>
		<category><![CDATA[Debug]]></category>
		<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Profiling]]></category>
		<category><![CDATA[rofile]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=2840</guid>
		<description><![CDATA[
by Matt  Dunham

Contents

 Useful  Functions
 M-lint  Warnings &#38; Errors
 Stop!  if Errors/Warnings&#8230;
 Break  Points
 Variable  Stacks
 Run  Configurations
 Profiling  &#38; Timing Code
 Style  Guidelines
 Layout
 Comments
 Variable  Names


Intro

Matlab code is very flexible, particularly with respect to its dynamic typing, however, this can also lead to [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/UU6gynj9ik_tK0reoJxnA5hnNLQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/UU6gynj9ik_tK0reoJxnA5hnNLQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/UU6gynj9ik_tK0reoJxnA5hnNLQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/UU6gynj9ik_tK0reoJxnA5hnNLQ/1/di" border="0" ismap="true"></img></a></p><p id="author"><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/profile.gif"><img class="aligncenter size-full wp-image-3111" title="profile" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/profile.gif" alt="" width="467" height="582" /></a></p>
<p>by <a href="http://www.mathworks.com/matlabcentral/fileexchange/authors/31578" onclick="pageTracker._trackPageview('/outgoing/www.mathworks.com/matlabcentral/fileexchange/authors/31578?referer=');">Matt  Dunham</a></p>
<div>
<span id="Contents"><h2>Contents</h2></span>
<ul>
<li> <a href="../../?p=2840&amp;preview=true#Useful_Functions"><strong>Useful  Functions</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#M-lint_Warnings_amp_Errors"><strong>M-lint  Warnings &amp; Errors</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Stop_if_ErrorsWarnings..."><strong>Stop!  if Errors/Warnings&#8230;</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Break_Points"><strong>Break  Points</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Variable_Stacks"><strong>Variable  Stacks</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Run_Configurations"><strong>Run  Configurations</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Profiling_amp_Timing_Code"><strong>Profiling  &amp; Timing Code</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Style_Guidelines"><strong>Style  Guidelines</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Layout"><strong>Layout</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Comments"><strong>Comments</strong></a></li>
<li> <a href="../../?p=2840&amp;preview=true#Variable_Names"><strong>Variable  Names</strong></a></li>
</ul>
</div>
<h2><strong>Intro<br />
</strong></h2>
<p>Matlab code is very flexible, particularly with respect to its dynamic typing, however, this can also lead to enormous headaches when it comes time to debug a crashing program. You may have overwritten or misspelled an important variable without knowing it, or inadvertently expanded the size of your matrix, and Matlab will happily continue executing without warning until your program grinds to a halt. Trying to discover the original problem that started dozens of lines before or in another function is not always easy.</p>
<p>In this section, we describe a number of tools and techniques that can help as well as ways to assess the speed of your code and find potential bottlenecks. We finish by discussing a few stylistic points and best practices that can make your code more readable and less prone to bugs in the first place.</p>
<span id="Useful_Functions"><h2><strong>Useful Functions</strong></h2></span>
<p>dbstop, dbquit, dbclear, dbstep, dbstep nlines, dbstep in, dbstep out, dbcont, dbstatus, keyboard, workspace, tic, toc, profile on, profile off, profile viewer</p>
<span id="M-lint_Warnings_amp_Errors"><h2><strong>M-lint Warnings &amp; Errors</strong></h2></span>
<p>Matlab automatically checks for certain problems and suggests fixes as you edit your m-files. The problem code is underlined in red much like word processors underline misspelled words. It is worthwhile paying attention to these as they can often point out problems before you run your code and frequently suggest ways to speed up execution. The suggestions appear when you hover your mouse over the underlined text, and you can quickly find these spots by looking for the red markers to the right of the document. The warnings and errors <em>M-lint</em> warns you about can be set under <em>File-&gt;Preferences-&gt;M-lint</em>.</p>
<p>In newer versions of Matlab, you can generate a full M-lint html report by going to <em>Tools-&gt;Save and Show M-lint Report</em>. You can also bring up a file dependency report or compare two versions of a file from the Tools drop down menu.</p>
<span id="Stop_if_ErrorsWarnings8230"><h2><strong>Stop! if Errors/Warnings&#8230;</strong></h2></span>
<p>If your program is crashing or displaying cryptic warnings, it is very useful to have it automatically halt execution right at the point where it ran into trouble. Select <em>Debug &#8211;&gt; Stop if Errors/Warnings</em> to turn this on.</p>
<span id="Break_Points"><h2><strong>Break Points</strong></h2></span>
<p>Break points can be set at any line in the document that executes code by pressing just right of the line number. A small circle will appear and will turn red when the file is saved.</p>
<p>These can be temporarily disabled by right clicking on them and selecting <em>disable</em>. To clear them all, type <strong>dbclear all</strong> or press the equivalent tool bar button.</p>
<p>You can set a condition on the breakpoints so that it is only triggered if a variable takes on a certain value, by right clicking on the variable and selecting &#8216;Set/Modify Condition&#8217;.</p>
<p>Once your code has stopped at a breakpoint, you can step one line at a time, continue on until the next break point, or exit debug mode completely using the tool bar buttons at the top of the editor.</p>
<p>The <em>step in</em> and <em>step out</em> buttons, let you enter into, or leave a function called at the current line.</p>
<p>There are function equivalents to these commands if you prefer, namely <strong>dbstep</strong>, <strong>dbstep nlines</strong>, <strong>dbstep in</strong>, <strong>dbstep out</strong>, <strong>dbcont</strong>, and <strong>dbquit</strong>. The <em>dbstop()</em> function can be used to set breakpoints and the <em>dbstatus()</em> function displays all of the breakpoints currently set. You can save these into a variable as in <strong>s = dbstatus()</strong>, clear the breakpoints and then reset them at a later point with <strong>dbstop(s)</strong>.</p>
<p>When you are in debug mode, the command window prompt will look slightly different: it will have a <em>k</em> in front.</p>
<p>The <em>keyboard()</em> function can also be used to stop execution of a program, temporarily relinquishing control back to the command window. Simply add the line <strong>keyboard</strong> anywhere in your file to stop at that point. To return execution, type <strong>return</strong>.</p>
<span id="Variable_Stacks"><h2><strong>Variable Stacks</strong></h2></span>
<p>Once execution has stopped because of a break point or <em>keyboard()</em> command, you can inspect the current values of the variables in the workspace window. Type <strong>workspace</strong> at the command prompt if it is not already open. If your program contains or calls multiple functions, you can move among the variable stacks from the top of this window, (next to where it says <strong>Stack:</strong>). This is particularly useful if your program stopped in a third party function and you want to return to your function&#8217;s stack to see what went wrong. You can also view the base workspace from here.</p>
<p>You can also execute commands at the command prompt while execution has stopped, and assign new values to existing variables.</p>
<span id="Run_Configurations"><h2><strong>Run Configurations</strong></h2></span>
<p>Each m-file has one or more <em>run configurations</em> associated with it as seen in the image below. These can be used to setup tests for your function by specifying test input values and other validation code. You can reach this window by selecting <em>Debug &#8211;&gt; Run Configuration for yourfile.m&#8211;&gt; Edit Run Configuration&#8230;</em>. Add new configurations with the + button and edit the code to execute on the right. These can then be run from the Debug drop down menu or from the run button in the editor.</p>
<span id="Profiling_amp_Timing_Code"><h2><strong>Profiling &amp; Timing Code</strong></h2></span>
<p>We have already seen the <em>tic()</em> and <em>toc()</em> functions, which can be used to time how long your code takes to run. Simply run <em>tic()</em> before your code and <em>toc()</em> after. Matlab, however, has a much more powerful framework, called profiling, which gives you a detailed report about how long was spent executing each subfunction. You can use this report to find bottlenecks that you might be able to improve.</p>
<p>You can turn on profiling with the <strong>profile on</strong> command and turn it off again with <strong>profile off</strong>. Once profiling is on, execute your code, and then type <strong>profile viewer</strong> to see the report.</p>
<p>The report shows a breakdown of all the functions called from your function, the number of times they were called, and the total time spent executing them. Self-time, denoted by a dark blue band, is the the time spent within a function not including how long was spent in functions called from here. This is really the statistic you should pay attention to.</p>
<span id="Style_Guidelines"><h2><strong>Style Guidelines</strong></h2></span>
<p>There is a lot of Matlab code floating around and too much of it is totally unreadable. It does not have to be this way. Readable code is easier to use, maintain, debug, and extend, and can often serve to communicate your ideas, particularly when they are mathematical in nature. What makes one piece of code more readable than another is somewhat subjective, but there are fairly uncontentious and straightforward heuristics we can nevertheless employ. We describe a few here. Many of these suggestions are from Richard Johnson&#8217;s <em>Matlab Programming Style Guidelines</em> available here.</p>
<p><a href="http://www.datatool.com/downloads/matlab_style_guidelines.pdf" onclick="pageTracker._trackPageview('/outgoing/www.datatool.com/downloads/matlab_style_guidelines.pdf?referer=');">Matlab Style Guidelines</a></p>
<span id="Layout"><h2><strong>Layout</strong></h2></span>
<p>Taking the time to organize and layout your m-file well, can help you find bugs later and jump to the code you are looking for much faster.</p>
<p>Use indentation to denote scope, indenting the code in function bodies, and further indenting the code within loops, switch statements, try/catch blocks as well as nested functions.</p>
<p>Include spaces around operators like ||, &amp;&amp;, ==, etc and consider breaking long commands into multiple lines by using ellipses, (&#8230;). Keep lines to less than say 80 characters long and be consistent throughout.</p>
<p>Align variables and values by equal signs and commas to show parallel structure.</p>
<p>plot(Xequal,f(Xequal), &#8216;o&#8217; ,&#8217;MarkerFaceColor&#8217; , &#8216;g&#8217;&#8230;</p>
<p>,&#8217;MarkerEdgeColor&#8217; , &#8216;k&#8217;&#8230;</p>
<p>,&#8217;LineWidth&#8217;       ,  2 &#8230;</p>
<p>,&#8217;MarkerSize&#8217;      , 10);</p>
<p>Matlab programmers seem to love packing as much into a single line of code as possible. When you can not think of an informative name for a temporary variable, passing values from one function directly to another via composition is not a bad approach. It is certainly better than having variables with names like temp1 and temp2 floating around. However, this approach can be taken to extremes too. If you find yourself squinting at a line of your own code, trying to decipher its purpose for more than a few seconds, consider breaking it into multiple commands.</p>
<span id="Comments"><h2><strong>Comments</strong></h2></span>
<p>The easiest way to make your program more readable is to document it well, however, this is no substitute for well written code, which should &#8217;speak&#8217; for itself. If you find yourself commenting many lines of code, consider adding greater structure, by writing subfunctions for instance. Subfunctions with well chosen names self document their behavior and help to abstract the details.</p>
<p>Assume programmers reading your code want to know how it actually works and will not be satisfied by assurances in the comments. Make it as easy as possible for them, (and yourself) to verify the correctness of your program.</p>
<p>Comments should be written directly below function headers as this is where the Matlab help functions look in calls to <em>help()</em> and <em>doc()</em>: <em>lookfor()</em> searches only the first line of comments in a function, and so this should be particulary concise and informative. The same applies to class definitions.</p>
<p>It is very important to describe the inputs and outputs to your function as well as any expectations or preconditions. Does your function work with unstandardized data, or missing values? What can the user of your function expect as output so long as the preconditions are met?</p>
<p>Provide examples of all of the important ways in which your function can be called. If you have 6 optional parameters, you do not have to show all 6 factorial possibilities, but include enough, (say 6), so that the user can reasonably extrapolate as to what a particular combination will do. Consider writing a separate function or script to demonstrate certain functionality in context. Separate advanced or infrequently used options and comment on these below the rest. When in doubt, follow the style of built in Matlab functions.</p>
<p>Consider using <em>process_options()</em> written by Mark Paskin, when a function takes many inputs. This allows users to call your function with the inputs specified in any order they like, preceded by a string name as in the following. <strong>myfunc(&#8216;niterations&#8217;,3,&#8217;maxdepth&#8217;,5,&#8217;verbose,&#8217;true)</strong></p>
<p>We describe _process_options in more depth here.</p>
<p><a href="http://www.advancedmcode.org/writing-and-using-functions-in-matlab.html">process_options</a></p>
<span id="Variable_Names"><h2><strong>Variable Names</strong></h2></span>
<p>It should go without saying that variable names should be meaningful and informative; part of this, however, is a matter of convention. Here are some suggestions.</p>
<ul>
<li>Short, single letter variables should only be      used in one of three cases: where the structure of the algorithm is      important, as in a mathematical derivation; for local temporary variables      such as loop indices; or when well defined conventions exist. In all of      these cases, document their meaning through comments.</li>
<li>Use lower case variable names when there is only      one word, or when one of two words is very short as in <em>isvalid</em>,      otherwise use camelCase.</li>
<li>Capitalize constant variables whose values will      not change.</li>
<li>Prefix variables denoting a number of elements      with the letter <em>n</em> as in <em>nvalues</em> for the number of values.</li>
<li>Suffix variables storing indices with <em>NDX</em> as in dataNDX</li>
<li>Prefix logical functions with <em>is</em> as in <em>isfinite()</em>.</li>
<li>Use i,j,k for loop variables.</li>
<li>Do not use any magic numbers, i.e. constant      values appearing out of nowhere. Rather, assign these values to variables      with descriptive names and use these instead.</li>
<li>Be consistent with pluralization for non-scalar      data, i.e. pick one of <em>value(j)</em> or <em>values(j)</em> and use that      convention throughout.</li>
<li>Resuse variables names only when the data is      related and even then, with caution. It can be very confusing when a      variable you have been tracing through a program suddenly changes role.</li>
</ul>
<p>See the section on Functions for more suggestions.</p>
<p><a href="http://www.advancedmcode.org/writing-and-using-functions-in-matlab.html">Functions</a></p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;title=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab&amp;bodytext=%0D%0Aby%20Matt%20%20Dunham%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Useful%20%20Functions%0D%0A%09%20M-lint%20%20Warnings%20%26amp%3B%20Errors%0D%0A%09%20Stop%21%20%20if%20Errors%2FWarnings...%0D%0A%09%20Break%20%20Points%0D%0A%09%20Variable%20%20Stacks%0D%0A%09%20Run%20%20Configurations%0D%0A%09%20Profiling%20%20%26amp%3B%20Timing%20Code%0D%0A%09%20Style%20%20Guidelines%0D%0A%09%20Layout%0D%0A%09%20Commen" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_title=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab_amp_bodytext=_0D_0Aby_20Matt_20_20Dunham_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Useful_20_20Functions_0D_0A_09_20M-lint_20_20Warnings_20_26amp_3B_20Errors_0D_0A_09_20Stop_21_20_20if_20Errors_2FWarnings..._0D_0A_09_20Break_20_20Points_0D_0A_09_20Variable_20_20Stacks_0D_0A_09_20Run_20_20Configurations_0D_0A_09_20Profiling_20_20_26amp_3B_20Timing_20Code_0D_0A_09_20Style_20_20Guidelines_0D_0A_09_20Layout_0D_0A_09_20Commen&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;title=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab&amp;notes=%0D%0Aby%20Matt%20%20Dunham%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Useful%20%20Functions%0D%0A%09%20M-lint%20%20Warnings%20%26amp%3B%20Errors%0D%0A%09%20Stop%21%20%20if%20Errors%2FWarnings...%0D%0A%09%20Break%20%20Points%0D%0A%09%20Variable%20%20Stacks%0D%0A%09%20Run%20%20Configurations%0D%0A%09%20Profiling%20%20%26amp%3B%20Timing%20Code%0D%0A%09%20Style%20%20Guidelines%0D%0A%09%20Layout%0D%0A%09%20Commen" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_title=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab_amp_notes=_0D_0Aby_20Matt_20_20Dunham_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Useful_20_20Functions_0D_0A_09_20M-lint_20_20Warnings_20_26amp_3B_20Errors_0D_0A_09_20Stop_21_20_20if_20Errors_2FWarnings..._0D_0A_09_20Break_20_20Points_0D_0A_09_20Variable_20_20Stacks_0D_0A_09_20Run_20_20Configurations_0D_0A_09_20Profiling_20_20_26amp_3B_20Timing_20Code_0D_0A_09_20Style_20_20Guidelines_0D_0A_09_20Layout_0D_0A_09_20Commen&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;t=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_t=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;title=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_title=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;title=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab&amp;annotation=%0D%0Aby%20Matt%20%20Dunham%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Useful%20%20Functions%0D%0A%09%20M-lint%20%20Warnings%20%26amp%3B%20Errors%0D%0A%09%20Stop%21%20%20if%20Errors%2FWarnings...%0D%0A%09%20Break%20%20Points%0D%0A%09%20Variable%20%20Stacks%0D%0A%09%20Run%20%20Configurations%0D%0A%09%20Profiling%20%20%26amp%3B%20Timing%20Code%0D%0A%09%20Style%20%20Guidelines%0D%0A%09%20Layout%0D%0A%09%20Commen" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_title=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab_amp_annotation=_0D_0Aby_20Matt_20_20Dunham_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Useful_20_20Functions_0D_0A_09_20M-lint_20_20Warnings_20_26amp_3B_20Errors_0D_0A_09_20Stop_21_20_20if_20Errors_2FWarnings..._0D_0A_09_20Break_20_20Points_0D_0A_09_20Variable_20_20Stacks_0D_0A_09_20Run_20_20Configurations_0D_0A_09_20Profiling_20_20_26amp_3B_20Timing_20Code_0D_0A_09_20Style_20_20Guidelines_0D_0A_09_20Layout_0D_0A_09_20Commen&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;title=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_title=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;t=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab&opener=bm&amp;ei=UTF-8&amp;d=%0D%0Aby%20Matt%20%20Dunham%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Useful%20%20Functions%0D%0A%09%20M-lint%20%20Warnings%20%26amp%3B%20Errors%0D%0A%09%20Stop%21%20%20if%20Errors%2FWarnings...%0D%0A%09%20Break%20%20Points%0D%0A%09%20Variable%20%20Stacks%0D%0A%09%20Run%20%20Configurations%0D%0A%09%20Profiling%20%20%26amp%3B%20Timing%20Code%0D%0A%09%20Style%20%20Guidelines%0D%0A%09%20Layout%0D%0A%09%20Commen" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_t=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab_opener=bm_amp_ei=UTF-8_amp_d=_0D_0Aby_20Matt_20_20Dunham_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Useful_20_20Functions_0D_0A_09_20M-lint_20_20Warnings_20_26amp_3B_20Errors_0D_0A_09_20Stop_21_20_20if_20Errors_2FWarnings..._0D_0A_09_20Break_20_20Points_0D_0A_09_20Variable_20_20Stacks_0D_0A_09_20Run_20_20Configurations_0D_0A_09_20Profiling_20_20_26amp_3B_20Timing_20Code_0D_0A_09_20Style_20_20Guidelines_0D_0A_09_20Layout_0D_0A_09_20Commen&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fdebugging-profiling-style-guidelines-in-matlab.html&amp;t=Debugging%2C%20Profiling%2C%20%26%20Style%20Guidelines%20in%20Matlab" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fdebugging-profiling-style-guidelines-in-matlab.html_amp_t=Debugging_2C_20Profiling_2C_20_26_20Style_20Guidelines_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=2840&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/AB01O11F49w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/debugging-profiling-style-guidelines-in-matlab.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/debugging-profiling-style-guidelines-in-matlab.html</feedburner:origLink></item>
		<item>
		<title>Jacket for MATLAB 1.4 is now available!</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/YNP4xd37Egg/jacket-for-matlab-1-4-is-now-available.html</link>
		<comments>http://www.advancedmcode.org/jacket-for-matlab-1-4-is-now-available.html#comments</comments>
		<pubDate>Mon, 19 Jul 2010 08:03:34 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[NewsGroup]]></category>
		<category><![CDATA[AccelerEyes]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3105</guid>
		<description><![CDATA[AccelerEyes is pleased to inform you that Jacket version 1.4 is now
available for download on our website.  We have placed a convenient
download button on the left side of our homepage, so feel free to try
the latest release.  Your website account has been reset so that you
can trial the new release.  The release includes full support [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/_mGwEK7d0-rOExFDD5gE2xU9fX8/0/da"><img src="http://feedads.g.doubleclick.net/~a/_mGwEK7d0-rOExFDD5gE2xU9fX8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_mGwEK7d0-rOExFDD5gE2xU9fX8/1/da"><img src="http://feedads.g.doubleclick.net/~a/_mGwEK7d0-rOExFDD5gE2xU9fX8/1/di" border="0" ismap="true"></img></a></p><p>AccelerEyes is pleased to inform you that Jacket version 1.4 is now<br />
available for download on our website.  We have placed a convenient<br />
download button on the left side of our homepage, so feel free to try<br />
the latest release.  Your website account has been reset so that you<br />
can trial the new release.  The release includes full support for<br />
NVIDIAs new FERMI architecture, a major upgrade to our compiler<br />
technology and many new functions have been added to our function<br />
library.  Please contact <a href="mailto:support@accelereyes.com">support@accelereyes.com</a> with any issues or<br />
questions.</p>
<p>You can learn about what is included in Jacket 1.4 at:<br />
<a href="http://cts.vresp.com/c/?Accelereyes/a05d5704ce/1f38f23d82/0a5b15fc46/utm_campaign=Jacket%20for%20MATLAB%201%2E4%20is%20now%20available%21&amp;utm_content=%7BURIENCODE%5Bemail_address%5D%7D&amp;utm_medium=Email&amp;utm_source=VerticalResponse&amp;utm_term=Text%20Version%20-%20Link%201" target="_blank" onclick="pageTracker._trackPageview('/outgoing/cts.vresp.com/c/?Accelereyes/a05d5704ce/1f38f23d82/0a5b15fc46/utm_campaign=Jacket_20for_20MATLAB_201_2E4_20is_20now_20available_21_amp_utm_content=_7BURIENCODE_5Bemail_address_5D_7D_amp_utm_medium=Email_amp_utm_source=VerticalResponse_amp_utm_term=Text_20Version_20-_20Link_201&amp;referer=');">http://cts.vresp.com/c/?Accelereyes/a05d5704ce/1f38f23d82/0a5b15fc46/utm_campaign=Jacket%20for%20MATLAB%201%2E4%20is%20now%20available%21&amp;utm_content={URIENCODE%5Bemail_address%5D}&amp;utm_medium=Email&amp;utm_source=VerticalResponse&amp;utm_term=Text%20Version%20-%20Link%201</a></p>
<p>We are confident that this release of Jacket will allow a whole new<br />
collection of applications to benefit from GPU computing and look<br />
forward to working with you to make that a reality.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;title=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21&amp;bodytext=AccelerEyes%20is%20pleased%20to%20inform%20you%20that%20Jacket%20version%201.4%20is%20now%0D%0Aavailable%20for%20download%20on%20our%20website.%20%C2%A0We%20have%20placed%20a%20convenient%0D%0Adownload%20button%20on%20the%20left%20side%20of%20our%20homepage%2C%20so%20feel%20free%20to%20try%0D%0Athe%20latest%20release.%20%C2%A0Your%20website%20accou" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_title=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21_amp_bodytext=AccelerEyes_20is_20pleased_20to_20inform_20you_20that_20Jacket_20version_201.4_20is_20now_0D_0Aavailable_20for_20download_20on_20our_20website._20_C2_A0We_20have_20placed_20a_20convenient_0D_0Adownload_20button_20on_20the_20left_20side_20of_20our_20homepage_2C_20so_20feel_20free_20to_20try_0D_0Athe_20latest_20release._20_C2_A0Your_20website_20accou&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;title=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21&amp;notes=AccelerEyes%20is%20pleased%20to%20inform%20you%20that%20Jacket%20version%201.4%20is%20now%0D%0Aavailable%20for%20download%20on%20our%20website.%20%C2%A0We%20have%20placed%20a%20convenient%0D%0Adownload%20button%20on%20the%20left%20side%20of%20our%20homepage%2C%20so%20feel%20free%20to%20try%0D%0Athe%20latest%20release.%20%C2%A0Your%20website%20accou" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_title=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21_amp_notes=AccelerEyes_20is_20pleased_20to_20inform_20you_20that_20Jacket_20version_201.4_20is_20now_0D_0Aavailable_20for_20download_20on_20our_20website._20_C2_A0We_20have_20placed_20a_20convenient_0D_0Adownload_20button_20on_20the_20left_20side_20of_20our_20homepage_2C_20so_20feel_20free_20to_20try_0D_0Athe_20latest_20release._20_C2_A0Your_20website_20accou&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;t=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_t=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;title=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_title=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;title=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21&amp;annotation=AccelerEyes%20is%20pleased%20to%20inform%20you%20that%20Jacket%20version%201.4%20is%20now%0D%0Aavailable%20for%20download%20on%20our%20website.%20%C2%A0We%20have%20placed%20a%20convenient%0D%0Adownload%20button%20on%20the%20left%20side%20of%20our%20homepage%2C%20so%20feel%20free%20to%20try%0D%0Athe%20latest%20release.%20%C2%A0Your%20website%20accou" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_title=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21_amp_annotation=AccelerEyes_20is_20pleased_20to_20inform_20you_20that_20Jacket_20version_201.4_20is_20now_0D_0Aavailable_20for_20download_20on_20our_20website._20_C2_A0We_20have_20placed_20a_20convenient_0D_0Adownload_20button_20on_20the_20left_20side_20of_20our_20homepage_2C_20so_20feel_20free_20to_20try_0D_0Athe_20latest_20release._20_C2_A0Your_20website_20accou&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;title=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_title=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;t=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21&opener=bm&amp;ei=UTF-8&amp;d=AccelerEyes%20is%20pleased%20to%20inform%20you%20that%20Jacket%20version%201.4%20is%20now%0D%0Aavailable%20for%20download%20on%20our%20website.%20%C2%A0We%20have%20placed%20a%20convenient%0D%0Adownload%20button%20on%20the%20left%20side%20of%20our%20homepage%2C%20so%20feel%20free%20to%20try%0D%0Athe%20latest%20release.%20%C2%A0Your%20website%20accou" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_t=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21_opener=bm_amp_ei=UTF-8_amp_d=AccelerEyes_20is_20pleased_20to_20inform_20you_20that_20Jacket_20version_201.4_20is_20now_0D_0Aavailable_20for_20download_20on_20our_20website._20_C2_A0We_20have_20placed_20a_20convenient_0D_0Adownload_20button_20on_20the_20left_20side_20of_20our_20homepage_2C_20so_20feel_20free_20to_20try_0D_0Athe_20latest_20release._20_C2_A0Your_20website_20accou&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fjacket-for-matlab-1-4-is-now-available.html&amp;t=Jacket%20for%20MATLAB%201.4%20is%20now%20available%21" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fjacket-for-matlab-1-4-is-now-available.html_amp_t=Jacket_20for_20MATLAB_201.4_20is_20now_20available_21&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3105&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/YNP4xd37Egg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/jacket-for-matlab-1-4-is-now-available.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/jacket-for-matlab-1-4-is-now-available.html</feedburner:origLink></item>
		<item>
		<title>Text-Independent Speaker Recognition Based on Neural Networks</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/WVfNbMKQJBw/text-independent-speaker-recognition-based-on-neural-networks.html</link>
		<comments>http://www.advancedmcode.org/text-independent-speaker-recognition-based-on-neural-networks.html#comments</comments>
		<pubDate>Thu, 15 Jul 2010 11:57:41 +0000</pubDate>
		<dc:creator>Luigi Rosa</dc:creator>
				<category><![CDATA[Sound technology]]></category>
		<category><![CDATA[ann]]></category>
		<category><![CDATA[artificial neural networks]]></category>
		<category><![CDATA[feature extraction]]></category>
		<category><![CDATA[neural networks]]></category>
		<category><![CDATA[speaker matching]]></category>
		<category><![CDATA[speaker recognition]]></category>
		<category><![CDATA[speaker verification]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3019</guid>
		<description><![CDATA[.: Click here to  download :.
Speaker recognition or voice recognition is the task of recognizing  people from their voices.    Such systems extract features from speech, model them and use them to  recognize the person    from his/her voice. Speaker recognition has a history dating back some  [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/VhQPTgD-rBRUm5wuCg_RHRqCH2w/0/da"><img src="http://feedads.g.doubleclick.net/~a/VhQPTgD-rBRUm5wuCg_RHRqCH2w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/VhQPTgD-rBRUm5wuCg_RHRqCH2w/1/da"><img src="http://feedads.g.doubleclick.net/~a/VhQPTgD-rBRUm5wuCg_RHRqCH2w/1/di" border="0" ismap="true"></img></a></p><p><a title="Download now Matlab code" href="http://www.advancedsourcecode.com/speakerannprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/speakerannprotected.zip?referer=');"><strong>.: Click here to  download :.</strong></a></p>
<p>Speaker recognition or voice recognition is the task of recognizing  people from their voices.    Such systems extract features from speech, model them and use them to  recognize the person    from his/her voice. Speaker recognition has a history dating back some  four decades,    where the output of several analog filters was averaged over time for  matching.    Speaker recognition uses the acoustic features of speech that have  been found to differ between    individuals. These acoustic patterns reflect both anatomy (e.g., size  and shape of    the throat and mouth) and learned behavioral patterns (e.g., voice  pitch, speaking style).    This incorporation of learned patterns into the voice templates (the  latter called &#8220;voiceprints&#8221;)    has earned speaker recognition its classification as a &#8220;behavioral  biometric.&#8221;</p>
<p>Speaker recognition systems employ three styles of spoken  input: text-dependent, text-prompted and text-independent.    Most speaker verification applications use text-dependent input, which  involves selection and    enrollment of one or more voice passwords. Text-prompted input is used  whenever there is concern    of imposters. The various technologies used to process and store  voiceprints includes hidden    Markov models, pattern matching algorithms, neural networks, matrix  representation and decision    trees. Some systems also use &#8220;anti-speaker&#8221; techniques, such as cohort  models, and world models.   Ambient noise levels can impede both collection of the initial and  subsequent voice samples.    Performance degradation can result from changes in behavioral  attributes of the voice and    from enrollment using one telephone and verification on another  telephone. Voice changes    due to aging also need to be addressed by recognition systems.</p>
<p>Many companies market speaker recognition engines, often as  part of large voice processing, control and switching    systems. Capture of the biometric is seen as non-invasive. The  technology needs little    additional hardware by using existing microphones and  voice-transmission technology allowing    recognition over long distances via ordinary telephones (wire line or  wireless).   Multi-layered networks are capable of performing just about any linear  or nonlinear computation, and can approximate any   reasonable function arbitrarily well. Such networks overcome the  problems associated with the perceptron and linear   networks. However, while the network being trained may be  theoretically capable of performing correctly, back   propagation and its variations may not always find a solution. There  are many types of neural networks for various   applications multilayered perceptrons (MLPs) are feedforward networks  and universal approximators. They are the   simplest and therefore most commonly used neural network  architectures.</p>
<p>Index Terms: Matlab, speaker recognition, speaker verification,  speaker matching, neural networks,  			feature extraction, ann, artificial neural networks, nn.</p>
<table id="table1" style="width: 100%;" border="0">
<tbody>
<tr>
<td colspan="2" width="40%"><img src="http://www.advancedsourcecode.com/images/soundsignal.jpg" border="0" alt="" width="250" height="136" align="left" /></td>
<td colspan="2">
<div>
<p>Figure 1. Speech signal</p>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>A simple and effective source code for Speaker  						Identification based on Neural Networks.</p>
</div>
</td>
</tr>
<tr>
<td width="12%"><a href="http://www.advancedsourcecode.com/speakerannprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/speakerannprotected.zip?referer=');"> <img src="http://www.advancedsourcecode.com/images/newlogo.gif" border="0" alt="" width="60" height="40" /></a></td>
<td colspan="3">
<div><a href="http://www.advancedsourcecode.com/speakerannprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/speakerannprotected.zip?referer=');">Demo code (protected  						P-files) available for performance evaluation.</a> Matlab Signal  Processing Toolbox and Matlab Neural Network Toolbox are required.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div><strong>Release</strong></div>
</td>
<td colspan="2">
<div><strong>Date</strong></div>
</td>
<td width="41%">
<div><strong>Major features</strong></div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.1</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2006.07.12</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Minor bug fixed</li>
</ul>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.0</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2006.06.14</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Speaker recognition based on Neural Networks</li>
<li><strong>High recognition rate</strong></li>
<li>Text-independent</li>
<li>Fully customizable</li>
<li>Easy c/c++ implementation</li>
<li>Sampling frequency-independent</li>
<li>Easy and intuitive GUI</li>
<li><a href="http://www.advancedsourcecode.com/speakerannprotected.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/speakerannprotected.zip?referer=');">Demo code (protected P-files) available for  							performance evaluation</a></li>
</ul>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>We recommend to check the secure connection to PayPal, in  						order to avoid any fraud.<br />
This donation has to be considered an encouragement to  						improve the code itself.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="business" type="hidden" value="luigi.rosa@tiscali.it" />
<input name="item_name" type="hidden" value="Speaker Recognition System Based on ANN -  AdvancedSourceCode.Com" />
<input name="amount" type="hidden" value="150.00" />
<input name="no_note" type="hidden" value="1" />
<input name="currency_code" type="hidden" value="EUR" />
<input name="tax" type="hidden" value="0" />
<input name="lc" type="hidden" value="US" />
<input name="bn" type="hidden" value="PP-DonationsBF" />
<input alt="Make your donation with PayPal" name="submit" src="http://www.advancedsourcecode.com/images/x-click-butcc-donate.gif" type="image" /> </form>
</td>
<td colspan="3">
<div>Speaker Recognition System Based on ANN &#8211; Release 1.0 &#8211; Click here  for  						your donation. In order to obtain the source code you  						have to pay a little sum of money: 150 EUROS (less  						than 210 U.S. Dollars).</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>Once you have done this, please email us  						<a href="mailto:luigi.rosa@tiscali.it?subject=-----%20Speaker%20Recognition%20System%20Based%20on%20ANN%20%20-----">luigi.rosa@tiscali.it</a><br />
As soon as possible (in a few days) you will receive our  						new release of Speaker Recognition System Based on ANN.</p>
<p>Alternatively, you can bestow using our banking  						coordinates:</p>
<table id="table2" style="width: 100%;" border="0">
<tbody>
<tr>
<td>
<div>Name :</div>
</td>
<td>
<div>Luigi Rosa</div>
</td>
</tr>
<tr>
<td>
<div>Address :</div>
</td>
<td>
<div>Via Centrale 35 67042 L&#8217;Aquila  Italy</div>
</td>
</tr>
<tr>
<td>
<div>Bank name:</div>
</td>
<td>
<div>Poste Italiane</div>
</td>
</tr>
<tr>
<td>
<div>Bank address:</div>
</td>
<td>
<div>Viale Europa 190 00144 Roma Italy</div>
</td>
</tr>
<tr>
<td>
<div>IBAN (International Bank Account  Number) :</div>
</td>
<td>
<div>IT-50-V-07601-03600-000058177916</div>
</td>
</tr>
<tr>
<td>
<div>BIC (Bank Identifier Code) :</div>
</td>
<td>
<div>BPPIITRRXXX</div>
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p>This program is free software; you can redistribute it  and/or modify     it under the terms of the GNU General Public License as published by     the Free Software Foundation; either version 2 of the License, or     (at your option) any later version. This program is distributed in  the hope that it will be useful,     but WITHOUT ANY WARRANTY; without even the implied warranty of     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     GNU General Public License for more details.</p>
<p>The authors have no relationship or partnership  				with The Mathworks. All the code provided is written in Matlab  				language (M-files and/or M-functions), with no dll or other  				protected parts of code (P-files or executables). The code was  				developed with Matlab 14 SP1. Matlab Signal Processing Toolbox and  Matlab Neural Network Toolbox are required.  				The code provided has to be considered &#8220;as is&#8221; and it is without any  kind of warranty. The  				authors deny any kind of warranty concerning the code as well  				as any kind of responsibility for problems and damages which may  				be caused by the use of the code itself including all parts of  				the source code.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;title=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks&amp;bodytext=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ASpeaker%20recognition%20or%20voice%20recognition%20is%20the%20task%20of%20recognizing%20%20people%20from%20their%20voices.%20%20%20%20Such%20systems%20extract%20features%20from%20speech%2C%20model%20them%20and%20use%20them%20to%20%20recognize%20the%20person%20%20%20%20from%20his%2Fher%20voice.%20Spea" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_title=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks_amp_bodytext=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ASpeaker_20recognition_20or_20voice_20recognition_20is_20the_20task_20of_20recognizing_20_20people_20from_20their_20voices._20_20_20_20Such_20systems_20extract_20features_20from_20speech_2C_20model_20them_20and_20use_20them_20to_20_20recognize_20the_20person_20_20_20_20from_20his_2Fher_20voice._20Spea&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;title=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks&amp;notes=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ASpeaker%20recognition%20or%20voice%20recognition%20is%20the%20task%20of%20recognizing%20%20people%20from%20their%20voices.%20%20%20%20Such%20systems%20extract%20features%20from%20speech%2C%20model%20them%20and%20use%20them%20to%20%20recognize%20the%20person%20%20%20%20from%20his%2Fher%20voice.%20Spea" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_title=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks_amp_notes=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ASpeaker_20recognition_20or_20voice_20recognition_20is_20the_20task_20of_20recognizing_20_20people_20from_20their_20voices._20_20_20_20Such_20systems_20extract_20features_20from_20speech_2C_20model_20them_20and_20use_20them_20to_20_20recognize_20the_20person_20_20_20_20from_20his_2Fher_20voice._20Spea&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;t=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_t=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;title=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_title=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;title=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks&amp;annotation=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ASpeaker%20recognition%20or%20voice%20recognition%20is%20the%20task%20of%20recognizing%20%20people%20from%20their%20voices.%20%20%20%20Such%20systems%20extract%20features%20from%20speech%2C%20model%20them%20and%20use%20them%20to%20%20recognize%20the%20person%20%20%20%20from%20his%2Fher%20voice.%20Spea" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_title=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks_amp_annotation=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ASpeaker_20recognition_20or_20voice_20recognition_20is_20the_20task_20of_20recognizing_20_20people_20from_20their_20voices._20_20_20_20Such_20systems_20extract_20features_20from_20speech_2C_20model_20them_20and_20use_20them_20to_20_20recognize_20the_20person_20_20_20_20from_20his_2Fher_20voice._20Spea&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;title=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_title=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;t=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks&opener=bm&amp;ei=UTF-8&amp;d=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0ASpeaker%20recognition%20or%20voice%20recognition%20is%20the%20task%20of%20recognizing%20%20people%20from%20their%20voices.%20%20%20%20Such%20systems%20extract%20features%20from%20speech%2C%20model%20them%20and%20use%20them%20to%20%20recognize%20the%20person%20%20%20%20from%20his%2Fher%20voice.%20Spea" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_t=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks_opener=bm_amp_ei=UTF-8_amp_d=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0ASpeaker_20recognition_20or_20voice_20recognition_20is_20the_20task_20of_20recognizing_20_20people_20from_20their_20voices._20_20_20_20Such_20systems_20extract_20features_20from_20speech_2C_20model_20them_20and_20use_20them_20to_20_20recognize_20the_20person_20_20_20_20from_20his_2Fher_20voice._20Spea&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Ftext-independent-speaker-recognition-based-on-neural-networks.html&amp;t=Text-Independent%20Speaker%20Recognition%20Based%20on%20Neural%20Networks" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Ftext-independent-speaker-recognition-based-on-neural-networks.html_amp_t=Text-Independent_20Speaker_20Recognition_20Based_20on_20Neural_20Networks&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3019&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/WVfNbMKQJBw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/text-independent-speaker-recognition-based-on-neural-networks.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/text-independent-speaker-recognition-based-on-neural-networks.html</feedburner:origLink></item>
		<item>
		<title>Unstructured 2D Triangular Mesh Generation in Matlab</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/n5EqVhvxQHw/unstructured-2d-triangular-mesh-generation-in-matlab.html</link>
		<comments>http://www.advancedmcode.org/unstructured-2d-triangular-mesh-generation-in-matlab.html#comments</comments>
		<pubDate>Mon, 12 Jul 2010 10:18:58 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[Computational Geometry]]></category>
		<category><![CDATA[mesh]]></category>
		<category><![CDATA[triangle]]></category>
		<category><![CDATA[triangular mesh]]></category>
		<category><![CDATA[unstructured mesh]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3054</guid>
		<description><![CDATA[


Contents

 Intro
 MESH2D  &#8211; Automatic Mesh Generation
 Matlab  PDE toolbox
 Triangle.m
 DistMesh




Intro
For most of the Numerical simulations Unstructured Mesh are very common. Especially for Finite Element methods triangular  meshes they offer the best trade-off between flexibility  and precision of calculus. Today I am going to write about  unstructured Mesh generation in MATLAB.
MESH2D [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/NbSRhKjQ6hitUHaV4AAX9PsS0GQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/NbSRhKjQ6hitUHaV4AAX9PsS0GQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/NbSRhKjQ6hitUHaV4AAX9PsS0GQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/NbSRhKjQ6hitUHaV4AAX9PsS0GQ/1/di" border="0" ismap="true"></img></a></p><div>
<div>
<div>
<span id="Contents"><h2>Contents</h2></span>
<ul>
<li> <a href="../../unstructured-2d-triangular-mesh-generation-in-matlab.html?preview=true&amp;preview_id=3054&amp;preview_nonce=2e69233a05#Intro">Intro</a></li>
<li> <a href="../../unstructured-2d-triangular-mesh-generation-in-matlab.html?preview=true&amp;preview_id=3054&amp;preview_nonce=2e69233a05#MESH2D_-_Automatic_Mesh_Generation">MESH2D  &#8211; Automatic Mesh Generation</a></li>
<li> <a href="../../unstructured-2d-triangular-mesh-generation-in-matlab.html?preview=true&amp;preview_id=3054&amp;preview_nonce=2e69233a05#Matlab_PDE_toolbox">Matlab  PDE toolbox</a></li>
<li> <a href="../../unstructured-2d-triangular-mesh-generation-in-matlab.html?preview=true&amp;preview_id=3054&amp;preview_nonce=2e69233a05#Triangle.m">Triangle.m</a></li>
<li> <a href="../../unstructured-2d-triangular-mesh-generation-in-matlab.html?preview=true&amp;preview_id=3054&amp;preview_nonce=2e69233a05#DistMesh">DistMesh</a></li>
</ul>
</div>
</div>
</div>
<span id="Intro"><h2>Intro</h2></span>
<p>For most of the Numerical simulations Unstructured Mesh are very common. Especially for Finite Element methods triangular  meshes they offer the best trade-off between flexibility  and precision of calculus. Today I am going to write about  unstructured Mesh generation in MATLAB.</p>
<span id="MESH2D_8211_Automatic_Mesh_Generation"><h2>MESH2D &#8211; Automatic Mesh Generation</h2></span>
<p><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/mesh2D.png"><img class="aligncenter size-full wp-image-3094" title="mesh2D" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/mesh2D.png" alt="" width="482" height="360" /></a></p>
<p><a href="http://www.mathworks.com/matlabcentral/fileexchange/authors/22624" onclick="pageTracker._trackPageview('/outgoing/www.mathworks.com/matlabcentral/fileexchange/authors/22624?referer=');">by Darren  Engwirda</a></p>
<p>MESH2D is a toolbox of 2D meshing routines that allows for the  automatic generation of unstructured triangular meshes for general 2D  geometry.</p>
<p>An iterative algorithm is used that attempts to optimise the mesh  topology/vertex position to achieve high quality triangulations.</p>
<p>In addition to the fully automatic settings, MESH2D allows the user  to specify sizing information, allowing for varying levels of mesh  resolution within the domain.</p>
<p>MESH2D includes a large set of demos/benchmarks. Please see the  following:</p>
<ul>
<li>meshdemo &#8211; runs a standard set of demos.</li>
<li>mesh_collection &#8211; a collection of user contributed geometries.</li>
<li>facedemo &#8211; examples of geometry with connected faces.</li>
</ul>
<p>It has one disavantage, due to the use of the qhull.mex routine (delaunay triangulator), despite of the slower standard matlab delaunay, it is only windows compatible.</p>
<p style="text-align: center;"><strong><span style="font-size: medium;"><a title="Download Now" href="http://www.mathworks.com/matlabcentral/fileexchange/25555-mesh2d-automatic-mesh-generation?controller=file_infos&amp;download=true" onclick="pageTracker._trackPageview('/outgoing/www.mathworks.com/matlabcentral/fileexchange/25555-mesh2d-automatic-mesh-generation?controller=file_infos_amp_download=true&amp;referer=');">Download Now</a></span></strong></p>
<p style="text-align: center;">
<span id="Matlab_PDE_toolbox"><h2>Matlab PDE toolbox</h2></span>
<p><span style="font-size: large;"><strong><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/pdetool.6.gif"><img class="aligncenter size-full wp-image-3096" title="pdetool.6" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/pdetool.6.gif" alt="" width="518" height="358" /></a></strong></span></p>
<p><span style="font-size: large;"><strong><br />
</strong></span></p>
<p><span style="font-size: large;"><span style="font-size: small;">Another solution is to use  (and buy)</span><span style="font-size: small;"> </span> <span style="font-size: small;">the matlab </span></span>MATLAB PDE Toolbox<span style="font-size: large;"><span style="font-size: small;">. </span></span></p>
<p><span style="font-size: large;"><span style="font-size: small;">The PDE toolbox is designed to solve</span></span> two-dimensional linear  partial differential  equations by finite element methods, but it also offers some simple CAD and mesh generation feature. By typing on the MATLAB command window:</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">pdetool</pre></div></div>

<p>You will access the drawing tools which are pretty simple. It is possible to draw simple geometric primitives and combine them with boolean operations. After finished the 2D geometry by pressing the mesh command, you will realize unstructered mesh generation that can be used to solve pdes, but also to export on the workspace.</p>
<span id="Triangle.m"><h2>Triangle.m</h2></span>
<p><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/triangle_m.jpg"><img class="aligncenter size-full wp-image-3097" title="triangle_m" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/triangle_m.jpg" alt="" width="530" height="464" /></a></p>
<p>Triangle.m is a MATLAB graphical user interface for creating 2D models          and generating ﬁnite element triangulation grids. Grid  generation is          accomplished by an external call to the C-code            Triangle.c, written by Jonathan Shewchuk at UC Berkeley. The  features          included in the MATLAB            interface were created with the intent to handle 2D geophysical  modeling          applications. However,          the generality of the interface should allow for  multidisciplinary usage.</p>
<p style="text-align: center;"><strong><span style="font-size: medium;"><a href="http://marineemlab.ucsd.edu/~kkey/Software/Triangle/index.php" onclick="pageTracker._trackPageview('/outgoing/marineemlab.ucsd.edu/_kkey/Software/Triangle/index.php?referer=');">Triangle.m home page</a></span></strong></p>
<p style="text-align: center;">
<span id="DistMesh"><h2>DistMesh</h2></span>
<p style="text-align: left;">DistMesh is a simple MATLAB code for generation of unstructured triangular and tetrahedral meshes. It was developed by <a href="http://www-math.mit.edu/%7Epersson" onclick="pageTracker._trackPageview('/outgoing/www-math.mit.edu/_7Epersson?referer=');">Per-Olof Persson</a> and <a href="http://www-math.mit.edu/%7Egs" onclick="pageTracker._trackPageview('/outgoing/www-math.mit.edu/_7Egs?referer=');">Gilbert Strang</a> in the <a href="http://www-math.mit.edu/" onclick="pageTracker._trackPageview('/outgoing/www-math.mit.edu/?referer=');">Department of Mathematics</a> at <a href="http://www.mit.edu/" onclick="pageTracker._trackPageview('/outgoing/www.mit.edu/?referer=');">MIT.</a></p>
<p style="text-align: left;">More infos can be found at the <a href="http://math.mit.edu/~persson/mesh/" onclick="pageTracker._trackPageview('/outgoing/math.mit.edu/_persson/mesh/?referer=');">DistMesh Home page</a>.</p>
<p><strong><span style="font-size: medium;"><br />
</span></strong></p>
<p style="text-align: center;"><strong><span style="font-size: medium;"><br />
</span></strong></p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;title=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab&amp;bodytext=%0D%0A%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20MESH2D%20%20-%20Automatic%20Mesh%20Generation%0D%0A%09%20Matlab%20%20PDE%20toolbox%0D%0A%09%20Triangle.m%0D%0A%09%20DistMesh%0D%0A%0D%0A%0D%0A%0D%0A%0D%0AIntro%0D%0AFor%20most%20of%20the%20Numerical%20simulations%20Unstructured%20Mesh%20are%20very%20common.%20Especially%20for%20Finite%20Element%20methods%20triangula" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_title=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab_amp_bodytext=_0D_0A_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20MESH2D_20_20-_20Automatic_20Mesh_20Generation_0D_0A_09_20Matlab_20_20PDE_20toolbox_0D_0A_09_20Triangle.m_0D_0A_09_20DistMesh_0D_0A_0D_0A_0D_0A_0D_0A_0D_0AIntro_0D_0AFor_20most_20of_20the_20Numerical_20simulations_20Unstructured_20Mesh_20are_20very_20common._20Especially_20for_20Finite_20Element_20methods_20triangula&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;title=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab&amp;notes=%0D%0A%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20MESH2D%20%20-%20Automatic%20Mesh%20Generation%0D%0A%09%20Matlab%20%20PDE%20toolbox%0D%0A%09%20Triangle.m%0D%0A%09%20DistMesh%0D%0A%0D%0A%0D%0A%0D%0A%0D%0AIntro%0D%0AFor%20most%20of%20the%20Numerical%20simulations%20Unstructured%20Mesh%20are%20very%20common.%20Especially%20for%20Finite%20Element%20methods%20triangula" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_title=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab_amp_notes=_0D_0A_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20MESH2D_20_20-_20Automatic_20Mesh_20Generation_0D_0A_09_20Matlab_20_20PDE_20toolbox_0D_0A_09_20Triangle.m_0D_0A_09_20DistMesh_0D_0A_0D_0A_0D_0A_0D_0A_0D_0AIntro_0D_0AFor_20most_20of_20the_20Numerical_20simulations_20Unstructured_20Mesh_20are_20very_20common._20Especially_20for_20Finite_20Element_20methods_20triangula&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;t=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_t=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;title=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_title=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;title=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab&amp;annotation=%0D%0A%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20MESH2D%20%20-%20Automatic%20Mesh%20Generation%0D%0A%09%20Matlab%20%20PDE%20toolbox%0D%0A%09%20Triangle.m%0D%0A%09%20DistMesh%0D%0A%0D%0A%0D%0A%0D%0A%0D%0AIntro%0D%0AFor%20most%20of%20the%20Numerical%20simulations%20Unstructured%20Mesh%20are%20very%20common.%20Especially%20for%20Finite%20Element%20methods%20triangula" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_title=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab_amp_annotation=_0D_0A_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20MESH2D_20_20-_20Automatic_20Mesh_20Generation_0D_0A_09_20Matlab_20_20PDE_20toolbox_0D_0A_09_20Triangle.m_0D_0A_09_20DistMesh_0D_0A_0D_0A_0D_0A_0D_0A_0D_0AIntro_0D_0AFor_20most_20of_20the_20Numerical_20simulations_20Unstructured_20Mesh_20are_20very_20common._20Especially_20for_20Finite_20Element_20methods_20triangula&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;title=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_title=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;t=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab&opener=bm&amp;ei=UTF-8&amp;d=%0D%0A%0D%0A%0D%0AContents%0D%0A%0D%0A%09%20Intro%0D%0A%09%20MESH2D%20%20-%20Automatic%20Mesh%20Generation%0D%0A%09%20Matlab%20%20PDE%20toolbox%0D%0A%09%20Triangle.m%0D%0A%09%20DistMesh%0D%0A%0D%0A%0D%0A%0D%0A%0D%0AIntro%0D%0AFor%20most%20of%20the%20Numerical%20simulations%20Unstructured%20Mesh%20are%20very%20common.%20Especially%20for%20Finite%20Element%20methods%20triangula" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_t=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab_opener=bm_amp_ei=UTF-8_amp_d=_0D_0A_0D_0A_0D_0AContents_0D_0A_0D_0A_09_20Intro_0D_0A_09_20MESH2D_20_20-_20Automatic_20Mesh_20Generation_0D_0A_09_20Matlab_20_20PDE_20toolbox_0D_0A_09_20Triangle.m_0D_0A_09_20DistMesh_0D_0A_0D_0A_0D_0A_0D_0A_0D_0AIntro_0D_0AFor_20most_20of_20the_20Numerical_20simulations_20Unstructured_20Mesh_20are_20very_20common._20Especially_20for_20Finite_20Element_20methods_20triangula&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Funstructured-2d-triangular-mesh-generation-in-matlab.html&amp;t=Unstructured%202D%20Triangular%20Mesh%20Generation%20in%20Matlab" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Funstructured-2d-triangular-mesh-generation-in-matlab.html_amp_t=Unstructured_202D_20Triangular_20Mesh_20Generation_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3054&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/n5EqVhvxQHw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/unstructured-2d-triangular-mesh-generation-in-matlab.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/unstructured-2d-triangular-mesh-generation-in-matlab.html</feedburner:origLink></item>
		<item>
		<title>Neural Network Technology</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/KOiRrSDcQjk/neural-network-technology.html</link>
		<comments>http://www.advancedmcode.org/neural-network-technology.html#comments</comments>
		<pubDate>Thu, 08 Jul 2010 12:03:18 +0000</pubDate>
		<dc:creator>Luigi Rosa</dc:creator>
				<category><![CDATA[Neural Network]]></category>
		<category><![CDATA[ann]]></category>
		<category><![CDATA[detection]]></category>
		<category><![CDATA[iris]]></category>
		<category><![CDATA[matching]]></category>
		<category><![CDATA[Matlab source code]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[networks]]></category>
		<category><![CDATA[neural]]></category>
		<category><![CDATA[nn]]></category>
		<category><![CDATA[recognition]]></category>
		<category><![CDATA[segmentation]]></category>
		<category><![CDATA[verification]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3028</guid>
		<description><![CDATA[.: Click here to  download :.
Having an easier life by the help of developing   technologies forces people is more complicated   technological structure. In today’s world, security is   more important than ever. Dazziling developments in   technology arouse interest of scientists about human and   human behaviors [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/oyfppRMfvcZsI8gzADZjH7ffTQU/0/da"><img src="http://feedads.g.doubleclick.net/~a/oyfppRMfvcZsI8gzADZjH7ffTQU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/oyfppRMfvcZsI8gzADZjH7ffTQU/1/da"><img src="http://feedads.g.doubleclick.net/~a/oyfppRMfvcZsI8gzADZjH7ffTQU/1/di" border="0" ismap="true"></img></a></p><p><a title="Download now Matlab code" href="http://www.advancedsourcecode.com/irisannprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/irisannprot.zip?referer=');"><strong>.: Click here to  download :.</strong></a></p>
<p>Having an easier life by the help of developing   technologies forces people is more complicated   technological structure. In today’s world, security is   more important than ever. Dazziling developments in   technology arouse interest of scientists about human and   human behaviors and at the same time, give an   opportunity to people to apply their thoughts. Today, for   security needs, detailed researches are organized to set   up the most reliable system. Iris Recognition Security   System is one of the most reliable leading technologies   that most people are related. Iris recognition   technology combines computer vision, pattern   recognition, statistical inference, and optics. Its purpose   is real-time, high confidence recognition of a person&#8217;s   identity by mathematical analysis of the random patterns   that are visible within the iris of an eye from some   distance. Because the iris is a protected internal organ   whose random texture is stable throughout life, it can   serve as a kind of living passport or a living password   that one need not remember but can always present.   Because the randomness of iris patterns has very high   dimensionality, recognition decisions are made with   confidence levels high enough to support rapid and   reliable exhaustive searches through national-sized   databases.</p>
<p>Artificial Neural Networks (ANNs) are programs   designed to simulate the way a simple biological nervous   system is believed to operate. They are based on   simulated nerve cells or neurons, which are joined   together in a variety of ways to form networks. These   networks have the capacity to learn, memorize and   create relationships amongst data. ANN is an   information-processing paradigm, implemented in   hardware or software that is modeled after the biological   processes of the brain. An ANN is made up of a   collection of highly interconnected nodes, called neurons   or processing elements. A node receives weighted inputs   from other nodes, sums these inputs, and propagates this   sum through a function to other nodes. This process is   analogous to the actions of a biological neuron. An ANN   learns by example. In a biological brain, learning is   accomplished as the strengths of the connections   between nodes are adjusted. This is true for ANN’s also,   as these strengths are captured by the weights between   the nodes. ANN’s most important advantage is that they   can be used to solve problems of considerable   complexity; problems that do not have an algorithmic   solution or for which such a solution is too complex to   be found. Because of their abstraction from the brain,   ANNs are good at solving problems that humans are   good at solving but which computers are not. Pattern   recognition and classification are examples of problems   that are well suited for ANN application.</p>
<p>Index Terms: Matlab, source, code, iris, recognition,  segmentation, detection, verification, matching, ann, nn, neural,  network, networks.</p>
<table id="table1" style="width: 100%;" border="0">
<tbody>
<tr>
<td colspan="2" width="40%"><img src="http://www.advancedsourcecode.com/images/neural_network.jpg" border="0" alt="" width="256" height="263" align="left" /></td>
<td colspan="2">
<div>
<p>Figure 1. Neural network example</p>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>A simple and effective source code for  Personal Iris Recognition Using Neural Network.</p>
</div>
</td>
</tr>
<tr>
<td width="12%"><a href="http://www.advancedsourcecode.com/irisannprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/irisannprot.zip?referer=');"> <img src="http://www.advancedsourcecode.com/images/newlogo.gif" border="0" alt="" width="60" height="40" /></a></td>
<td colspan="3">
<div><a href="http://www.advancedsourcecode.com/irisannprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/irisannprot.zip?referer=');">Demo  code (protected                         P-files) available for performance evaluation.</a> Matlab Image Processing Toolbox, Matlab Neural Network Toolbox and  Matlab Signal Processing Toolbox are required.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div><strong>Release</strong></div>
</td>
<td colspan="2">
<div><strong>Date</strong></div>
</td>
<td width="41%">
<div><strong>Major features</strong></div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.0</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2008.12.15</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Iris recognition based on neural  networks</li>
<li>Fast and accurate iris segmentation</li>
<li>Customizable code</li>
<li>Matching module</li>
<li>Easy and intuitive GUI</li>
<li>High speed iris matching</li>
<li><a href="http://www.advancedsourcecode.com/irisannprot.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/irisannprot.zip?referer=');">Demo  code (protected P-files) available for                             performance evaluation</a></li>
</ul>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>We recommend to check the secure  connection to PayPal, in                          order to avoid any fraud.<br />
This donation has to be considered an  encouragement to                          improve the code itself.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="business" type="hidden" value="luigi.rosa@tiscali.it" />
<input name="item_name" type="hidden" value="Personal Iris Recognition Using Neural  Network - AdvancedSourceCode.Com" />
<input name="amount" type="hidden" value="250.00" />
<input name="no_note" type="hidden" value="1" />
<input name="currency_code" type="hidden" value="EUR" />
<input name="tax" type="hidden" value="0" />
<input name="lc" type="hidden" value="US" />
<input name="bn" type="hidden" value="PP-DonationsBF" />
<input alt="Make your donation with PayPal" name="submit" src="http://www.advancedsourcecode.com/images/x-click-butcc-donate.gif" type="image" /> </form>
</td>
<td colspan="3">
<div>Personal Iris Recognition Using Neural Network &#8211;  Click here for                         your donation. In order to obtain the source  code you                          have to pay a little sum of money: 250 EUROS  (less                          than 350 U.S. Dollars).</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>Once you have done this, please email us                          <a href="mailto:luigi.rosa@tiscali.it?subject=-----%20Personal%20Iris%20Recognition%20Using%20Neural%20Network%20-----">luigi.rosa@tiscali.it</a><br />
As soon as possible (in a few days) you will  receive our                          new release of Personal Iris Recognition Using  Neural Network.</p>
<p>Alternatively, you can bestow using our banking                          coordinates:</p>
<table id="table2" style="width: 100%;" border="0">
<tbody>
<tr>
<td>
<div>Name :</div>
</td>
<td>
<div>Luigi Rosa</div>
</td>
</tr>
<tr>
<td>
<div>Address :</div>
</td>
<td>
<div>Via  Centrale 35 67042 L&#8217;Aquila Italy</div>
</td>
</tr>
<tr>
<td>
<div>Bank name:</div>
</td>
<td>
<div>Poste  Italiane</div>
</td>
</tr>
<tr>
<td>
<div>Bank  address:</div>
</td>
<td>
<div>Viale  Europa 190 00144 Roma Italy</div>
</td>
</tr>
<tr>
<td>
<div>IBAN  (International Bank Account Number) :</div>
</td>
<td>
<div>IT-50-V-07601-03600-000058177916</div>
</td>
</tr>
<tr>
<td>
<div>BIC (Bank  Identifier Code) :</div>
</td>
<td>
<div>BPPIITRRXXX</div>
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p>The authors have no relationship or partnership                  with The Mathworks. All the code provided is written in  Matlab                  language (M-files and/or M-functions), with no dll or  other                  protected parts of code (P-files or executables). The  code was                  developed with Matlab 2006a. Matlab Image Processing  Toolbox, Matlab Neural Network Toolbox and Matlab Signal Processing  Toolbox are required.                 The code provided has to be considered &#8220;as is&#8221; and it is  without any kind of warranty. The                  authors deny any kind of warranty concerning the code as  well                  as any kind of responsibility for problems and damages  which may                  be caused by the use of the code itself including all  parts of                  the source code.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;title=Neural%20Network%20Technology%20&amp;bodytext=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AHaving%20an%20easier%20life%20by%20the%20help%20of%20developing%20%20%20technologies%20forces%20people%20is%20more%20complicated%20%20%20technological%20structure.%20In%20today%E2%80%99s%20world%2C%20security%20is%20%20%20more%20important%20than%20ever.%20Dazziling%20developments%20in%20%20%20techn" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_title=Neural_20Network_20Technology_20_amp_bodytext=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AHaving_20an_20easier_20life_20by_20the_20help_20of_20developing_20_20_20technologies_20forces_20people_20is_20more_20complicated_20_20_20technological_20structure._20In_20today_E2_80_99s_20world_2C_20security_20is_20_20_20more_20important_20than_20ever._20Dazziling_20developments_20in_20_20_20techn&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;title=Neural%20Network%20Technology%20&amp;notes=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AHaving%20an%20easier%20life%20by%20the%20help%20of%20developing%20%20%20technologies%20forces%20people%20is%20more%20complicated%20%20%20technological%20structure.%20In%20today%E2%80%99s%20world%2C%20security%20is%20%20%20more%20important%20than%20ever.%20Dazziling%20developments%20in%20%20%20techn" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_title=Neural_20Network_20Technology_20_amp_notes=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AHaving_20an_20easier_20life_20by_20the_20help_20of_20developing_20_20_20technologies_20forces_20people_20is_20more_20complicated_20_20_20technological_20structure._20In_20today_E2_80_99s_20world_2C_20security_20is_20_20_20more_20important_20than_20ever._20Dazziling_20developments_20in_20_20_20techn&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;t=Neural%20Network%20Technology%20" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_t=Neural_20Network_20Technology_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;title=Neural%20Network%20Technology%20" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_title=Neural_20Network_20Technology_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;title=Neural%20Network%20Technology%20&amp;annotation=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AHaving%20an%20easier%20life%20by%20the%20help%20of%20developing%20%20%20technologies%20forces%20people%20is%20more%20complicated%20%20%20technological%20structure.%20In%20today%E2%80%99s%20world%2C%20security%20is%20%20%20more%20important%20than%20ever.%20Dazziling%20developments%20in%20%20%20techn" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_title=Neural_20Network_20Technology_20_amp_annotation=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AHaving_20an_20easier_20life_20by_20the_20help_20of_20developing_20_20_20technologies_20forces_20people_20is_20more_20complicated_20_20_20technological_20structure._20In_20today_E2_80_99s_20world_2C_20security_20is_20_20_20more_20important_20than_20ever._20Dazziling_20developments_20in_20_20_20techn&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;title=Neural%20Network%20Technology%20" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_title=Neural_20Network_20Technology_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Neural%20Network%20Technology%20%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Neural_20Network_20Technology_20_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;t=Neural%20Network%20Technology%20&opener=bm&amp;ei=UTF-8&amp;d=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AHaving%20an%20easier%20life%20by%20the%20help%20of%20developing%20%20%20technologies%20forces%20people%20is%20more%20complicated%20%20%20technological%20structure.%20In%20today%E2%80%99s%20world%2C%20security%20is%20%20%20more%20important%20than%20ever.%20Dazziling%20developments%20in%20%20%20techn" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_t=Neural_20Network_20Technology_20_opener=bm_amp_ei=UTF-8_amp_d=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AHaving_20an_20easier_20life_20by_20the_20help_20of_20developing_20_20_20technologies_20forces_20people_20is_20more_20complicated_20_20_20technological_20structure._20In_20today_E2_80_99s_20world_2C_20security_20is_20_20_20more_20important_20than_20ever._20Dazziling_20developments_20in_20_20_20techn&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Neural%20Network%20Technology%20&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fneural-network-technology.html&amp;t=Neural%20Network%20Technology%20" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fneural-network-technology.html_amp_t=Neural_20Network_20Technology_20&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3028&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/KOiRrSDcQjk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/neural-network-technology.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/neural-network-technology.html</feedburner:origLink></item>
		<item>
		<title>Strings, Cells, Structs, and Sets in Matlab</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/1DGFqimXKao/strings-cells-structs-and-sets-in-matlab.html</link>
		<comments>http://www.advancedmcode.org/strings-cells-structs-and-sets-in-matlab.html#comments</comments>
		<pubDate>Tue, 06 Jul 2010 13:54:31 +0000</pubDate>
		<dc:creator>Admin</dc:creator>
				<category><![CDATA[Code Optimization]]></category>
		<category><![CDATA[cell araays]]></category>
		<category><![CDATA[set matlab]]></category>
		<category><![CDATA[strings matlab]]></category>
		<category><![CDATA[struct matlab]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=2921</guid>
		<description><![CDATA[
by Matt        Dunham
In this section, we examine strings and string operations  as well as two very important Matlab data structures: cell arrays,                and structs. We also examine various set-theoretic  operations and [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/n1VlbMbThgHDWgZU-oJlWe3q9So/0/da"><img src="http://feedads.g.doubleclick.net/~a/n1VlbMbThgHDWgZU-oJlWe3q9So/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/n1VlbMbThgHDWgZU-oJlWe3q9So/1/da"><img src="http://feedads.g.doubleclick.net/~a/n1VlbMbThgHDWgZU-oJlWe3q9So/1/di" border="0" ismap="true"></img></a></p><p><a href="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/Cell_String_Struct.gif"><img class="aligncenter size-full wp-image-3087" title="Cell_String_Struct" src="http://www.advancedmcode.org/home/wp-content/uploads/2010/07/Cell_String_Struct.gif" alt="" width="476" height="235" /></a></p>
<p>by <a href="http://www.mathworks.com/matlabcentral/fileexchange/authors/31578" onclick="pageTracker._trackPageview('/outgoing/www.mathworks.com/matlabcentral/fileexchange/authors/31578?referer=');">Matt        Dunham</a></p>
<p>In this section, we examine strings and string operations  as well as two very important Matlab data structures: cell arrays,                and structs. We also examine various set-theoretic  operations and end with a comprehensive example.</p>
<span id="Contents"><h2>Contents</h2></span>
<ul>
<li> <a href="../../?p=2921&amp;preview=true#Useful_Functions">Useful  Functions</a><a name="1"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Character_Arrays">Character  Arrays</a><a name="2"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Formatting_Strings">Formatting  Strings</a><a name="11"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Cell_Arrays">Cell  Arrays</a><a name="13"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#String_Matching">String  Matching</a><a name="25"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Set_Operations">Set  Operations</a><a name="30"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Structs">Structs</a><a name="36"></a></li>
<li> <a href="../../?p=2921&amp;preview=true#Example">Example</a></li>
</ul>
<span id="Useful_Functions"><h2>Useful Functions<a name="1"></a></h2></span>
<div>
<ul>
<li>repmat, ischar, isletter, ispace, upper, lower,  strtrim, deblank,</li>
<li>isstrprop, char, abs, dec2hex, hex2dec, bin2dec,  dec2bin, num2str,</li>
<li>mat2str, str2num, strcat, strvcat, sortrows, strjust,  sprintf, fprintf,</li>
<li>cell, iscell, num2cell, mat2cell, cell2mat, cellstr,  iscellstr, cellfun,</li>
<li>strcmp, strcmpi, strncmp, strncmpi, strfind,  strmatch, strtok</li>
<li>intersect, union, setdiff, setxor, ismember, all,  any, perms, issorted,</li>
<li>unique, struct, isstruct, fieldnames, isfield,  orderfields, rmfield,</li>
<li>isvarname, genvarname, vertcat, cell2struct,  struct2cell</li>
</ul>
</div>
<span id="Character_Arrays"><h2>Character Arrays<a name="2"></a></h2></span>
<p>Strings in Matlab are actually character matrices, which can  be manipulated in very similar ways to numeric matrices.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color:#A020F0;">' This is Test String #1! '</span>
B = A<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">5</span><span style="color: #080;">&#41;</span>              <span style="color: #228B22;">% extract the first 5 characters</span>
C = <span style="color: #080;">&#91;</span>A ; A<span style="color: #080;">&#93;</span>             <span style="color: #228B22;">% concatenate vertically</span>
D = <span style="color: #0000FF;">repmat</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'@!'</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">5</span><span style="color: #080;">&#41;</span>    <span style="color: #228B22;">% replicate char arrays, just like numeric ones</span>
E = <span style="color:#A020F0;">'z'</span>:-<span style="color: #33f;">1</span>:<span style="color:#A020F0;">'a'</span>          <span style="color: #228B22;">% create the matrices just like numeric ones.</span>
check = ischar<span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>       <span style="color: #228B22;">% is it a char array?</span>
F = isletter<span style="color: #080;">&#40;</span>A<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">6</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>    <span style="color: #228B22;">% which characters are letters? - returns a logical array</span>
G = isspace<span style="color: #080;">&#40;</span>A<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">6</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>     <span style="color: #228B22;">% which characters are spaces? - returns a logical array</span>
H = <span style="color: #0000FF;">upper</span><span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>            <span style="color: #228B22;">% convert to upper case</span>
<span style="color: #0000FF;">I</span> = <span style="color: #0000FF;">lower</span><span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>            <span style="color: #228B22;">% convert to lower case</span>
<span style="color: #0000FF;">J</span> = strtrim<span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>          <span style="color: #228B22;">% trim leading and trailing blank spaces.</span>
K = <span style="color: #0000FF;">deblank</span><span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>          <span style="color: #228B22;">% trim trailing blank spaces only.</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
 This <span style="color: #0000FF;">is</span> Test String #<span style="color: #33f;">1</span>!
B =
 This
C =
 This <span style="color: #0000FF;">is</span> Test String #<span style="color: #33f;">1</span>!
 This <span style="color: #0000FF;">is</span> Test String #<span style="color: #33f;">1</span>!
D =
@!@!@!@!@!
@!@!@!@!@!
E =
zyxwvutsrqponmlkjihgfedcba
check =
     <span style="color: #33f;">1</span>
F =
     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">0</span>
G =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>
H =
 THIS <span style="color: #0000FF;">IS</span> TEST STRING #<span style="color: #33f;">1</span>!
<span style="color: #0000FF;">I</span> =
 this <span style="color: #0000FF;">is</span> test string #<span style="color: #33f;">1</span>!
<span style="color: #0000FF;">J</span> =
This <span style="color: #0000FF;">is</span> Test String #<span style="color: #33f;">1</span>!
K =
 This <span style="color: #0000FF;">is</span> Test String #<span style="color: #33f;">1</span>!</pre></div></div>

<p>The <em>isstrprop()</em> function can be used much like the <em>isletter()</em> or <em>isspace()</em> functions, allowing you to test which characters in  a matrix belong to one of several different categories. Type <strong>doc  isstrprop</strong> for the full list.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str = <span style="color:#A020F0;">' a1!'</span>
A = isstrprop<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'punct'</span><span style="color: #080;">&#41;</span>       <span style="color: #228B22;">% punctuation</span>
B = isstrprop<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'alphanum'</span><span style="color: #080;">&#41;</span>    <span style="color: #228B22;">% alpha or numeric characters</span>
C = isstrprop<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'digit'</span><span style="color: #080;">&#41;</span>       <span style="color: #228B22;">% decimal digits</span>
D = isstrprop<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'3A'</span>,<span style="color:#A020F0;">'xdigit'</span><span style="color: #080;">&#41;</span>     <span style="color: #228B22;">% valid hexadecimal digits</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str =
 a1!
A =
     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>
B =
     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">0</span>
C =
     <span style="color: #33f;">0</span>     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">0</span>
D =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span></pre></div></div>

<p>The <em>char()</em> and <em>abs()</em> functions convert from  integers to the ascii equivalents and vice versa.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">char</span><span style="color: #080;">&#40;</span><span style="color: #33f;">65</span><span style="color: #080;">&#41;</span>
B = <span style="color: #0000FF;">abs</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'B'</span><span style="color: #080;">&#41;</span>
C = <span style="color: #0000FF;">abs</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'abcdefg'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
A
B =
    <span style="color: #33f;">66</span>
C =
    <span style="color: #33f;">97</span>    <span style="color: #33f;">98</span>    <span style="color: #33f;">99</span>   <span style="color: #33f;">100</span>   <span style="color: #33f;">101</span>   <span style="color: #33f;">102</span>   <span style="color: #33f;">103</span></pre></div></div>

<p>We can convert from string representations of hexadecimal or  binary numbers to decimal numbers and back using the <em>dec2hex()</em> , <em>hex2dec()</em> , <em>dec2bin()</em>, and <em>bin2dec()</em> functions. The num2xxx and  xxx2num functions operate on signed numbers.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">dec2hex</span><span style="color: #080;">&#40;</span><span style="color: #33f;">211</span><span style="color: #080;">&#41;</span>
B = <span style="color: #0000FF;">hex2dec</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'D3'</span><span style="color: #080;">&#41;</span>
C = <span style="color: #0000FF;">dec2bin</span><span style="color: #080;">&#40;</span><span style="color: #33f;">211</span><span style="color: #080;">&#41;</span>
D = <span style="color: #0000FF;">bin2dec</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'11010011'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
D3
B =
   <span style="color: #33f;">211</span>
C =
<span style="color: #33f;">11010011</span>
D =
   <span style="color: #33f;">211</span></pre></div></div>

<p>We can also use the <em>num2str()</em> and <em>mat2str()</em> functions to generate string representations of numeric matrices. Or,  parse a number from a string with <em>str2num()</em></p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">num2str</span><span style="color: #080;">&#40;</span><span style="color: #080;">&#91;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">5</span>;<span style="color: #33f;">1</span>:<span style="color: #33f;">5</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span> <span style="color: #228B22;">%Takes an optional formatting string - see Formatting Strings section</span>
B = <span style="color: #0000FF;">mat2str</span><span style="color: #080;">&#40;</span><span style="color: #080;">&#91;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">5</span>;<span style="color: #33f;">1</span>:<span style="color: #33f;">5</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span>
C = <span style="color: #0000FF;">str2num</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'44'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
<span style="color: #33f;">1</span>  <span style="color: #33f;">2</span>  <span style="color: #33f;">3</span>  <span style="color: #33f;">4</span>  <span style="color: #33f;">5</span>
<span style="color: #33f;">1</span>  <span style="color: #33f;">2</span>  <span style="color: #33f;">3</span>  <span style="color: #33f;">4</span>  <span style="color: #33f;">5</span>
B =
<span style="color: #080;">&#91;</span><span style="color: #33f;">1</span> <span style="color: #33f;">2</span> <span style="color: #33f;">3</span> <span style="color: #33f;">4</span> <span style="color: #33f;">5</span>;<span style="color: #33f;">1</span> <span style="color: #33f;">2</span> <span style="color: #33f;">3</span> <span style="color: #33f;">4</span> <span style="color: #33f;">5</span><span style="color: #080;">&#93;</span>
C =
    <span style="color: #33f;">44</span></pre></div></div>

<p>If the size of the strings match, we can concatenate vertically  and horizontally just like numeric matrices. If not, we can             either use the <em>blanks()</em> function to pad with blanks  or the <em>strcat()</em> and <em>strvcat()</em> functions to concatenate,  adding blanks for us.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">C = <span style="color: #0000FF;">strvcat</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'hello'</span>,<span style="color:#A020F0;">'this'</span>,<span style="color:#A020F0;">'is'</span>,<span style="color:#A020F0;">'a'</span>,<span style="color:#A020F0;">'test'</span><span style="color: #080;">&#41;</span> <span style="color: #228B22;">%concatenate vertically</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">C =
hello
this
<span style="color: #0000FF;">is</span>
a
test</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">D = <span style="color: #0000FF;">sortrows</span><span style="color: #080;">&#40;</span>C<span style="color: #080;">&#41;</span>                             <span style="color: #228B22;">% sort the rows alphabetically</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">D =
a
hello
<span style="color: #0000FF;">is</span>
test
this</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">E = <span style="color: #0000FF;">strjust</span><span style="color: #080;">&#40;</span>C<span style="color: #080;">&#41;</span>                              <span style="color: #228B22;">% justify the char array</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">E =
hello
 this
   <span style="color: #0000FF;">is</span>
    a
 test</pre></div></div>

<p><a name="FormattingStrings"></a></p>
<span id="Formatting_Strings"><h2>Formatting Strings<a name="11"></a></h2></span>
<p>The <em>sprintf()</em> and <em>fprintf()</em> functions can be  used to format strings for output: <em>sprintf()</em> returns a string,  while <em>fprintf()</em> directly displays the string, or writes it to a  file, depending on the mode.</p>
<p>We pass these functions a string that includes place  holders, (denoted by % signs) which will be replaced by corresponding             values listed after the string. These place holders define  how these values will be formatted. We use %s for a string, %d             for a decimal digit, and %05.2f to indicate that we want a  floating point number with 5 characters in total, two digits after             the decimal point, and padded with zeros if necessary. There  are many formatting options; Type <strong>doc sprintf</strong> for the full list.  We can use escape characters like \n for a new line and \t for a tab.  The examples will make this clearer.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">fprintf</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'\n %s won the %s medal in the %s \n for his time of %05.2f seconds.\n'</span>,<span style="color: #080;">...</span>
         <span style="color:#A020F0;">'Kosuke Kitajima'</span>,<span style="color:#A020F0;">'gold'</span>,<span style="color:#A020F0;">'100m breaststroke'</span>,<span style="color: #33f;">60.08</span><span style="color: #080;">&#41;</span>;
str = <span style="color: #0000FF;">sprintf</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'%07.4f'</span>,<span style="color: #0000FF;">pi</span><span style="color: #080;">&#41;</span> <span style="color: #228B22;">% display pi to 4 decimals, 7 chars in total, padded with zeros.</span>
str = <span style="color: #0000FF;">sprintf</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'%x'</span>,<span style="color: #33f;">999</span><span style="color: #080;">&#41;</span>    <span style="color: #228B22;">% display number in hexadecimal</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"> Kosuke Kitajima won the gold medal in the 100m breaststroke
 <span style="color: #0000FF;">for</span> his time of <span style="color: #33f;">60.08</span> seconds.
<span style="">str</span> =
<span style="color: #33f;">03.1416</span>
str =
3e7</pre></div></div>

<span id="Cell_Arrays"><h2>Cell Arrays<a name="13"></a></h2></span>
<p>In addition to matrices, Matlab supports another very  general and powerful data structure, the cell array. Cell arrays can             hold any type of Matlab object or structure including  numeric matrices of different sizes, character arrays, other cells,             as well as structs and objects, which we will see later. In  fact, the same cell array can hold elements of different types.             Cell arrays are frequently used to store strings, (i.e. char  arrays of different sizes), which is why we discuss them here.             Much of what was said about indexing matrices also applies  to cells with one or two important differences.</p>
<p>We can create a cell array by using the <em>cell()</em> command</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">cell</span><span style="color: #080;">&#40;</span><span style="color: #33f;">2</span>,<span style="color: #33f;">4</span><span style="color: #080;">&#41;</span>               <span style="color: #228B22;">% create a 2-by-4 cell array</span>
check = iscell<span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>           <span style="color: #228B22;">% really a cell?</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>
     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>     <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>
check =
     <span style="color: #33f;">1</span></pre></div></div>

<p>or by enclosing an object or objects in curly braces</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B = <span style="color: #080;">&#123;</span><span style="color: #080;">&#91;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">3</span><span style="color: #080;">&#93;</span>,<span style="color:#A020F0;">'hello'</span>,<span style="color: #080;">&#123;</span><span style="color: #33f;">1</span><span style="color: #080;">&#125;</span>;<span style="color: #080;">&#91;</span><span style="color: #33f;">3</span>;<span style="color: #33f;">5</span><span style="color: #080;">&#93;</span>,<span style="color:#A020F0;">'yes'</span>,<span style="color: #080;">&#123;</span><span style="color:#A020F0;">'no'</span><span style="color: #080;">&#125;</span><span style="color: #080;">&#125;</span>   <span style="color: #228B22;">% add a bunch of objects to a cell array</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B =
    <span style="color: #080;">&#91;</span>1x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'hello'</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'yes'</span>      <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span></pre></div></div>

<p>A 2-by-4 cell array is in fact made up of 8, 1-by-1 cell  arrays, (simply called cells), which store the data. There are two             ways to index into, (and assign into) a cell array: using ()  braces and using {} braces. Using the () braces, we access or             assign cells. Using the the {} braces we access or assign  the data within those cells.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">C = B<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#41;</span>      <span style="color: #228B22;">% Returns a cell holding the string 'hello'</span>
D = B<span style="color: #080;">&#123;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#125;</span>      <span style="color: #228B22;">% Returns the string itself.</span>
E = B<span style="color: #080;">&#40;</span>:,<span style="color: #33f;">1</span><span style="color: #080;">&#41;</span>      <span style="color: #228B22;">% Returns a cell array holding the first column</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">C =
    <span style="color:#A020F0;">'hello'</span>
D =
hello
E =
    <span style="color: #080;">&#91;</span>1x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span></pre></div></div>

<p>If we extract the data from more than one cell at once using  the curly bracket indexing, Matlab returns each element one at             a time much like a function that returns multiple values. We  can assign each of these to new variables or perhaps pass them             directly to a function expecting that many parameters.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #080;">&#91;</span>F,G<span style="color: #080;">&#93;</span> = B<span style="color: #080;">&#123;</span>:,<span style="color: #33f;">1</span><span style="color: #080;">&#125;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">F =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>
G =
     <span style="color: #33f;">3</span>
     <span style="color: #33f;">5</span></pre></div></div>

<p>When assigning data, we must be careful what kind of brackets  we use.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">1</span><span style="color: #080;">&#41;</span> = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'test'</span><span style="color: #080;">&#125;</span>   <span style="color: #228B22;">% must pass it a cell as we are using () brackets</span>
B<span style="color: #080;">&#123;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">1</span><span style="color: #080;">&#125;</span> = <span style="color:#A020F0;">'test'</span>     <span style="color: #228B22;">% same effect as line before.</span>
B<span style="color: #080;">&#123;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#125;</span> = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'test'</span><span style="color: #080;">&#125;</span>   <span style="color: #228B22;">% careful, this adds a cell to the cell at (1,2), (nesting cells)</span>
H = B<span style="color: #080;">&#123;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#125;</span><span style="color: #080;">&#123;</span><span style="color: #33f;">1</span><span style="color: #080;">&#125;</span>       <span style="color: #228B22;">% to then extract it, we have to index twice.</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B =
    <span style="color:#A020F0;">'test'</span>          <span style="color:#A020F0;">'hello'</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'yes'</span>      <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
B =
    <span style="color:#A020F0;">'test'</span>          <span style="color:#A020F0;">'hello'</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'yes'</span>      <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
B =
    <span style="color:#A020F0;">'test'</span>          <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'yes'</span>         <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
H =
test</pre></div></div>

<p>We can transpose,reshape,replicate, concatenate, and delete  cell arrays just like matrices</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">I</span> = B'                           <span style="color: #228B22;">% transpose</span>
<span style="color: #0000FF;">J</span> = <span style="color: #0000FF;">reshape</span><span style="color: #080;">&#40;</span>B,<span style="color: #33f;">1</span>,<span style="color: #33f;">6</span><span style="color: #080;">&#41;</span>               <span style="color: #228B22;">% reshape</span>
K = <span style="color: #080;">&#91;</span><span style="color: #0000FF;">repmat</span><span style="color: #080;">&#40;</span>C,<span style="color: #33f;">1</span>,<span style="color: #33f;">3</span><span style="color: #080;">&#41;</span>;B<span style="color: #080;">&#93;</span>            <span style="color: #228B22;">% replicate and concatenate</span>
K<span style="color: #080;">&#40;</span><span style="color: #0000FF;">end</span>,:<span style="color: #080;">&#41;</span> = <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>                    <span style="color: #228B22;">% delete</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">I</span> =
    <span style="color:#A020F0;">'test'</span>        <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color:#A020F0;">'yes'</span>
    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span>  <span style="color: #080;">&#125;</span>
<span style="color: #0000FF;">J</span> =
    <span style="color:#A020F0;">'test'</span>    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color:#A020F0;">'yes'</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
K =
    <span style="color:#A020F0;">'hello'</span>         <span style="color:#A020F0;">'hello'</span>       <span style="color:#A020F0;">'hello'</span>
    <span style="color:#A020F0;">'test'</span>          <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
    <span style="color: #080;">&#91;</span>2x1 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color:#A020F0;">'yes'</span>         <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>
K =
    <span style="color:#A020F0;">'hello'</span>    <span style="color:#A020F0;">'hello'</span>       <span style="color:#A020F0;">'hello'</span>
    <span style="color:#A020F0;">'test'</span>     <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span>    <span style="color: #080;">&#123;</span>1x1 <span style="color: #0000FF;">cell</span><span style="color: #080;">&#125;</span></pre></div></div>

<p>Suppose we store numeric matrices of different sizes in a cell  array.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #080;">&#123;</span><span style="color: #080;">&#91;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">3</span><span style="color: #080;">&#93;</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">4</span>,<span style="color: #33f;">5</span><span style="color: #080;">&#93;</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">6</span><span style="color: #080;">&#93;</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">7</span>,<span style="color: #33f;">8</span>,<span style="color: #33f;">9</span>,<span style="color: #33f;">10</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#125;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
    <span style="color: #080;">&#91;</span>1x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>1x2 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span><span style="color: #33f;">6</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>1x4 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span></pre></div></div>

<p>We can concatenate the entries themselves by first extracting  all of the elements using the colon operator and then passing             the results to the concatenation operator [].</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B = <span style="color: #080;">&#91;</span>A<span style="color: #080;">&#123;</span>:<span style="color: #080;">&#125;</span><span style="color: #080;">&#93;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">4</span>     <span style="color: #33f;">5</span>     <span style="color: #33f;">6</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">8</span>     <span style="color: #33f;">9</span>    <span style="color: #33f;">10</span></pre></div></div>

<p>We can also use the <em>num2cell()</em> , <em>mat2cell()</em> ,and   <em>cell2mat()</em> functions to convert between matrices and cell  arrays.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">num2cell</span><span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">5</span><span style="color: #080;">&#41;</span>                     <span style="color: #228B22;">% convert [1,2,3,4,5] to {[1],[2],[3],[4],[5]}</span>
B = mat2cell<span style="color: #080;">&#40;</span><span style="color: #0000FF;">ones</span><span style="color: #080;">&#40;</span><span style="color: #33f;">4</span>,<span style="color: #33f;">8</span><span style="color: #080;">&#41;</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">2</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#93;</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">3</span>,<span style="color: #33f;">3</span>,<span style="color: #33f;">2</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span> <span style="color: #228B22;">% partition matrix ones(4,8) into 6 cells</span>
C = cell2mat<span style="color: #080;">&#40;</span>B<span style="color: #080;">&#41;</span>                       <span style="color: #228B22;">% inverse operation, (group together)</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
    <span style="color: #080;">&#91;</span><span style="color: #33f;">1</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span><span style="color: #33f;">2</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span><span style="color: #33f;">3</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span><span style="color: #33f;">4</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span><span style="color: #33f;">5</span><span style="color: #080;">&#93;</span>
B =
    <span style="color: #080;">&#91;</span>2x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>2x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>2x2 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
    <span style="color: #080;">&#91;</span>2x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>2x3 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>    <span style="color: #080;">&#91;</span>2x2 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
C =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>
     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>
     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>
     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">1</span></pre></div></div>

<p>We can convert from a character matrix to a cell array of  strings, where each string is taken to be a row of the matrix, using             the <em>cellstr()</em> command, and back again using the <em>char()</em> command.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #0000FF;">strvcat</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'cell'</span>,<span style="color:#A020F0;">'array'</span>,<span style="color:#A020F0;">'example'</span><span style="color: #080;">&#41;</span>   <span style="color: #228B22;">% make a char array</span>
B = <span style="color: #0000FF;">cellstr</span><span style="color: #080;">&#40;</span>A<span style="color: #080;">&#41;</span>                          <span style="color: #228B22;">% convert to a cell array of strings</span>
check = iscellstr<span style="color: #080;">&#40;</span>B<span style="color: #080;">&#41;</span>                    <span style="color: #228B22;">% check that its a cell array of strings</span>
C = <span style="color: #0000FF;">char</span><span style="color: #080;">&#40;</span>B<span style="color: #080;">&#41;</span>                             <span style="color: #228B22;">% convert back to a char array</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
<span style="color: #0000FF;">cell</span>
array
example
B =
    <span style="color:#A020F0;">'cell'</span>
    <span style="color:#A020F0;">'array'</span>
    <span style="color:#A020F0;">'example'</span>
check =
     <span style="color: #33f;">1</span>
C =
<span style="color: #0000FF;">cell</span>
array
example</pre></div></div>

<p>The <em>cellfun()</em> function can be very useful when we want  to apply a function to the data inside every cell. We make use of  function handles             here. Read the section on functions if you are unfamiliar.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'This, '</span>, <span style="color:#A020F0;">'a '</span>, <span style="color:#A020F0;">'test '</span>, <span style="color:#A020F0;">'message, '</span>, <span style="color:#A020F0;">'contains '</span>, <span style="color:#A020F0;">'3 '</span>,<span style="color:#A020F0;">'punctuation '</span> ,<span style="color:#A020F0;">'marks!'</span><span style="color: #080;">&#125;</span>
f = @<span style="color: #080;">&#40;</span>str<span style="color: #080;">&#41;</span>str<span style="color: #080;">&#40;</span>isstrprop<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'alphanum'</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>; <span style="color: #228B22;">% function to remove non-alphanumeric chars</span>
B = <span style="color: #0000FF;">cellfun</span><span style="color: #080;">&#40;</span>f,A,<span style="color:#A020F0;">'uniformOutput'</span>,false<span style="color: #080;">&#41;</span>    <span style="color: #228B22;">% apply function to A, don't expect same-sized output</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
  Columns <span style="color: #33f;">1</span> through <span style="color: #33f;">6</span>
    <span style="color:#A020F0;">'This, '</span>    <span style="color:#A020F0;">'a '</span>    <span style="color:#A020F0;">'test '</span>    <span style="color:#A020F0;">'message, '</span>    <span style="color:#A020F0;">'contains '</span>    <span style="color:#A020F0;">'3 '</span>
  Columns <span style="color: #33f;">7</span> through <span style="color: #33f;">8</span>
    <span style="color:#A020F0;">'punctuation '</span>    <span style="color:#A020F0;">'marks!'</span>
B =
  Columns <span style="color: #33f;">1</span> through <span style="color: #33f;">7</span>
    <span style="color:#A020F0;">'This'</span>    <span style="color:#A020F0;">'a'</span>    <span style="color:#A020F0;">'test'</span>    <span style="color:#A020F0;">'message'</span>    <span style="color:#A020F0;">'contains'</span>    <span style="color:#A020F0;">'3'</span>    <span style="color:#A020F0;">'punctuation'</span>
  Column <span style="color: #33f;">8</span>
    <span style="color:#A020F0;">'marks'</span></pre></div></div>

<span id="String_Matching"><h2>String Matching<a name="25"></a></h2></span>
<p>There are several functions we can use to compare strings.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color:#A020F0;">'testString'</span>;
test1 = <span style="color: #0000FF;">strcmp</span><span style="color: #080;">&#40;</span>A,<span style="color:#A020F0;">'testString'</span><span style="color: #080;">&#41;</span>;       <span style="color: #228B22;">% compare two strings</span>
test2 = <span style="color: #0000FF;">strcmpi</span><span style="color: #080;">&#40;</span>A,<span style="color:#A020F0;">'TESTstring'</span><span style="color: #080;">&#41;</span>;      <span style="color: #228B22;">% compare two strings but ignore case</span>
test3 = <span style="color: #0000FF;">strncmp</span><span style="color: #080;">&#40;</span>A,<span style="color:#A020F0;">'testFoo'</span>,<span style="color: #33f;">4</span><span style="color: #080;">&#41;</span>;       <span style="color: #228B22;">% compare only the first 4 chars of two strings</span>
test4 = strncmpi<span style="color: #080;">&#40;</span>A,<span style="color:#A020F0;">'TEST'</span>,<span style="color: #33f;">4</span><span style="color: #080;">&#41;</span>;         <span style="color: #228B22;">% same as above, but ignore case.</span>
result = test1 &amp;&amp; test2 &amp;&amp; test3 &amp;&amp; test4</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">result =
     <span style="color: #33f;">1</span></pre></div></div>

<p>We can find the occurrences of one substring inside another  using the <em>strfind()</em> function, or search for all strings, (stored  as rows in a matrix or cells in a cell array) that begin with a certain  string,             using the <em>strmatch()</em> function. We can also grab the  first token in a char array delimited by spaces using the <em>strtok()</em> command, (the delimiter it uses can be changed).</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str = <span style="color:#A020F0;">'actgcgctgacgctgatacacgggagctgacgactgaggacgagc'</span>
A = strfind<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'ctga'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str =
actgcgctgacgctgatacacgggagctgacgactgaggacgagc
A =
     <span style="color: #33f;">7</span>    <span style="color: #33f;">13</span>    <span style="color: #33f;">27</span>    <span style="color: #33f;">34</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str2 = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'foobar'</span>,<span style="color:#A020F0;">'bar'</span>,<span style="color:#A020F0;">'barfoo'</span>,<span style="color:#A020F0;">'foofoo'</span><span style="color: #080;">&#125;</span>
B = <span style="color: #0000FF;">strmatch</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'foo'</span>,str2<span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">str2 =
    <span style="color:#A020F0;">'foobar'</span>    <span style="color:#A020F0;">'bar'</span>    <span style="color:#A020F0;">'barfoo'</span>    <span style="color:#A020F0;">'foofoo'</span>
B =
     <span style="color: #33f;">1</span>
     <span style="color: #33f;">4</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #080;">&#91;</span>token, remaining<span style="color: #080;">&#93;</span> = <span style="color: #0000FF;">strtok</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'this is a test'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">token =
this
remaining =
 <span style="color: #0000FF;">is</span> a test</pre></div></div>

<p>Matlab also supports search and replace operations using  regular expressions. Type <strong>doc regexp</strong> for numerous examples and  useful functions.</p>
<span id="Set_Operations"><h2>Set Operations<a name="30"></a></h2></span>
<p>We can treat matrices and cell arrays as sets or multisets  and perform various set operations with the functions <em>union()</em> , <em>intersect()</em> , <em>setdiff()</em> , <em>setxor()</em> , and <em>ismember()</em> .</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">set1 = <span style="color: #33f;">1</span>:<span style="color: #33f;">2</span>:<span style="color: #33f;">9</span>
set2 = <span style="color: #33f;">1</span>:<span style="color: #33f;">4</span>
int = <span style="color: #0000FF;">intersect</span><span style="color: #080;">&#40;</span>set1,set2<span style="color: #080;">&#41;</span>
uni = <span style="color: #0000FF;">union</span><span style="color: #080;">&#40;</span>set1,set2<span style="color: #080;">&#41;</span>
dif = <span style="color: #0000FF;">setdiff</span><span style="color: #080;">&#40;</span>set1,set2<span style="color: #080;">&#41;</span>
xor = <span style="color: #0000FF;">setxor</span><span style="color: #080;">&#40;</span>set1,set2<span style="color: #080;">&#41;</span>
check = <span style="color: #0000FF;">ismember</span><span style="color: #080;">&#40;</span><span style="color: #33f;">3</span>,set1<span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">set1 =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">5</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">9</span>
set2 =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">4</span>
int =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">3</span>
uni =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">4</span>     <span style="color: #33f;">5</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">9</span>
dif =
     <span style="color: #33f;">5</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">9</span>
xor =
     <span style="color: #33f;">2</span>     <span style="color: #33f;">4</span>     <span style="color: #33f;">5</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">9</span>
check =
     <span style="color: #33f;">1</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">set3 = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'alpha'</span>,<span style="color:#A020F0;">'beta'</span>,<span style="color:#A020F0;">'gamma'</span><span style="color: #080;">&#125;</span>
set4 = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'delta'</span>,<span style="color:#A020F0;">'beta'</span>,<span style="color:#A020F0;">'epsilon'</span><span style="color: #080;">&#125;</span>
intc = <span style="color: #0000FF;">intersect</span><span style="color: #080;">&#40;</span>set3,set4<span style="color: #080;">&#41;</span>
check2 = <span style="color: #0000FF;">ismember</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'delta'</span>,set4<span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">set3 =
    <span style="color:#A020F0;">'alpha'</span>    <span style="color:#A020F0;">'beta'</span>    <span style="color:#A020F0;">'gamma'</span>
set4 =
    <span style="color:#A020F0;">'delta'</span>    <span style="color:#A020F0;">'beta'</span>    <span style="color:#A020F0;">'epsilon'</span>
intc =
    <span style="color:#A020F0;">'beta'</span>
check2 =
     <span style="color: #33f;">1</span></pre></div></div>

<p>If we are taking the set difference of integers, it can be much  faster to use the custom <em>mysetdiff()</em> function, which uses  logical indexing.</p>
<p><a href="http://www.mathworks.com/matlabcentral/fx_files/21653/3/content/tutorial/mfiles/mysetdiff.m" onclick="pageTracker._trackPageview('/outgoing/www.mathworks.com/matlabcentral/fx_files/21653/3/content/tutorial/mfiles/mysetdiff.m?referer=');">mysetdiff</a></p>
<p>Or, perform basic quantification over logical arrays using  the <em>all()</em> and <em>any()</em> commands: <em>all()</em> returns true if  all of the inputs are true; whereas, <em>any()</em> returns true if at  least one input is true.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">forall = <span style="color: #0000FF;">all</span><span style="color: #080;">&#40;</span>isprime<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">2</span>:<span style="color: #33f;">7</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>
exists = <span style="color: #0000FF;">any</span><span style="color: #080;">&#40;</span>isprime<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">2</span>:<span style="color: #33f;">7</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">forall =
     <span style="color: #33f;">0</span>
exists =
     <span style="color: #33f;">1</span></pre></div></div>

<p>We can also extract the unique elements of a cell array or  matrix using the <em>unique()</em> function.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #080;">&#91;</span><span style="color:#A020F0;">'bba'</span>;<span style="color:#A020F0;">'bab'</span>;perms<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'aba'</span><span style="color: #080;">&#41;</span>;<span style="color:#A020F0;">'aba'</span><span style="color: #080;">&#93;</span>                          <span style="color: #228B22;">% perms() generates every permutation</span>
<span style="color: #080;">&#91;</span>uniqueElems, firstIndices, perm<span style="color: #080;">&#93;</span> = <span style="color: #0000FF;">unique</span><span style="color: #080;">&#40;</span>A,<span style="color:#A020F0;">'rows'</span><span style="color: #080;">&#41;</span>;         <span style="color: #228B22;">% find unique rows of A</span>
sorted = issorted<span style="color: #080;">&#40;</span>uniqueElems,<span style="color:#A020F0;">'rows'</span><span style="color: #080;">&#41;</span>                         <span style="color: #228B22;">% are they sorted? - yes!</span>
check = isequal<span style="color: #080;">&#40;</span>A,uniqueElems<span style="color: #080;">&#40;</span>perm,:<span style="color: #080;">&#41;</span>,A<span style="color: #080;">&#40;</span>firstIndices<span style="color: #080;">&#40;</span>perm<span style="color: #080;">&#41;</span>,:<span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span><span style="color: #228B22;">% note what each return var represents</span>
uniqueNums = <span style="color: #0000FF;">unique</span><span style="color: #080;">&#40;</span><span style="color: #080;">&#91;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">1</span>,<span style="color: #33f;">1</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">3</span>,<span style="color: #33f;">4</span>,<span style="color: #33f;">4</span>,<span style="color: #33f;">5</span>,<span style="color: #33f;">3</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">1</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span>                <span style="color: #228B22;">% numeric matrix</span>
uniqueNames = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'Bob'</span>,<span style="color:#A020F0;">'Fred'</span>,<span style="color:#A020F0;">'Bob'</span>,<span style="color:#A020F0;">'Ed'</span>,<span style="color:#A020F0;">'Fred'</span>,<span style="color:#A020F0;">'Chris'</span>,<span style="color:#A020F0;">'Ed'</span><span style="color: #080;">&#125;</span>   <span style="color: #228B22;">% cell array</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
bba
bab
aba
aab
baa
baa
aba
aab
aba
sorted =
     <span style="color: #33f;">1</span>
check =
     <span style="color: #33f;">1</span>
uniqueNums =
     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">4</span>     <span style="color: #33f;">5</span>
uniqueNames =
    <span style="color:#A020F0;">'Bob'</span>    <span style="color:#A020F0;">'Fred'</span>    <span style="color:#A020F0;">'Bob'</span>    <span style="color:#A020F0;">'Ed'</span>    <span style="color:#A020F0;">'Fred'</span>    <span style="color:#A020F0;">'Chris'</span>    <span style="color:#A020F0;">'Ed'</span></pre></div></div>

<span id="Structs"><h2>Structs<a name="36"></a></h2></span>
<p>In addition to matrices and cell arrays, Matlab supports  structured arrays or structs, which allow you to organize data and             access it by name. For those familiar with other programming  languages, structs are basically hashmaps with string keys, but             depending on how they are used, they can also operate much  like a simple database. Structs, like cell arrays, can store anything             you throw at them. Conversely, you can store structs in cell  arrays and even within matrices so long as the fieldnames of             the structs are the same.</p>
<p>We can create a struct by using the <em>struct()</em> function, passing it fieldnames and data in alternating order.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S = <span style="color: #0000FF;">struct</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'time'</span>,<span style="color: #33f;">0</span>:<span style="color: #33f;">10</span>,<span style="color:#A020F0;">'distance'</span>,<span style="color: #33f;">0</span>:<span style="color: #33f;">0.1</span>:<span style="color: #33f;">1</span>,<span style="color:#A020F0;">'height'</span>,<span style="color: #33f;">1</span>:<span style="color: #33f;">0.1</span>:<span style="color: #33f;">2</span><span style="color: #080;">&#41;</span>
check = isstruct<span style="color: #080;">&#40;</span>S<span style="color: #080;">&#41;</span>             <span style="color: #228B22;">% really a struct?</span>
names = <span style="color: #0000FF;">fieldnames</span><span style="color: #080;">&#40;</span>S<span style="color: #080;">&#41;</span>           <span style="color: #228B22;">% list the fieldnames</span>
check2 = isfield<span style="color: #080;">&#40;</span>S,<span style="color:#A020F0;">'time'</span><span style="color: #080;">&#41;</span>      <span style="color: #228B22;">% check that 'time' is really a fieldname</span>
S = orderfields<span style="color: #080;">&#40;</span>S<span style="color: #080;">&#41;</span>              <span style="color: #228B22;">% order the fields alphabetically</span>
S = <span style="color: #0000FF;">rmfield</span><span style="color: #080;">&#40;</span>S,<span style="color:#A020F0;">'height'</span><span style="color: #080;">&#41;</span>         <span style="color: #228B22;">% remove a field</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S =
        time: <span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">1</span> <span style="color: #33f;">2</span> <span style="color: #33f;">3</span> <span style="color: #33f;">4</span> <span style="color: #33f;">5</span> <span style="color: #33f;">6</span> <span style="color: #33f;">7</span> <span style="color: #33f;">8</span> <span style="color: #33f;">9</span> <span style="color: #33f;">10</span><span style="color: #080;">&#93;</span>
    distance: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
      height: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
check =
     <span style="color: #33f;">1</span>
names =
    <span style="color:#A020F0;">'time'</span>
    <span style="color:#A020F0;">'distance'</span>
    <span style="color:#A020F0;">'height'</span>
check2 =
     <span style="color: #33f;">1</span>
S =
    distance: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
      height: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
        time: <span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">1</span> <span style="color: #33f;">2</span> <span style="color: #33f;">3</span> <span style="color: #33f;">4</span> <span style="color: #33f;">5</span> <span style="color: #33f;">6</span> <span style="color: #33f;">7</span> <span style="color: #33f;">8</span> <span style="color: #33f;">9</span> <span style="color: #33f;">10</span><span style="color: #080;">&#93;</span>
S =
    distance: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
        time: <span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">1</span> <span style="color: #33f;">2</span> <span style="color: #33f;">3</span> <span style="color: #33f;">4</span> <span style="color: #33f;">5</span> <span style="color: #33f;">6</span> <span style="color: #33f;">7</span> <span style="color: #33f;">8</span> <span style="color: #33f;">9</span> <span style="color: #33f;">10</span><span style="color: #080;">&#93;</span></pre></div></div>

<p>Access the data using the . operator and the name of the field.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">time = S.<span style="">time</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">time =
     <span style="color: #33f;">0</span>     <span style="color: #33f;">1</span>     <span style="color: #33f;">2</span>     <span style="color: #33f;">3</span>     <span style="color: #33f;">4</span>     <span style="color: #33f;">5</span>     <span style="color: #33f;">6</span>     <span style="color: #33f;">7</span>     <span style="color: #33f;">8</span>     <span style="color: #33f;">9</span>    <span style="color: #33f;">10</span></pre></div></div>

<p>Alternatively, we can use a string for the name, which allows  us to access fields dynamically at runtime, much like a map.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">distance = S.<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'distance'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">distance =
  Columns <span style="color: #33f;">1</span> through <span style="color: #33f;">7</span>
         <span style="color: #33f;">0</span>    <span style="color: #33f;">0.1000</span>    <span style="color: #33f;">0.2000</span>    <span style="color: #33f;">0.3000</span>    <span style="color: #33f;">0.4000</span>    <span style="color: #33f;">0.5000</span>    <span style="color: #33f;">0.6000</span>
  Columns <span style="color: #33f;">8</span> through <span style="color: #33f;">11</span>
    <span style="color: #33f;">0.7000</span>    <span style="color: #33f;">0.8000</span>    <span style="color: #33f;">0.9000</span>    <span style="color: #33f;">1.0000</span></pre></div></div>

<p>We can set set a new value for a field</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S.<span style="">time</span> = <span style="color: #33f;">2</span>*S.<span style="">time</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S =
    distance: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
        time: <span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">2</span> <span style="color: #33f;">4</span> <span style="color: #33f;">6</span> <span style="color: #33f;">8</span> <span style="color: #33f;">10</span> <span style="color: #33f;">12</span> <span style="color: #33f;">14</span> <span style="color: #33f;">16</span> <span style="color: #33f;">18</span> <span style="color: #33f;">20</span><span style="color: #080;">&#93;</span></pre></div></div>

<p>or add new fields and data on the fly</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S.<span style="">newField</span> = <span style="color:#A020F0;">'foo'</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S =
    distance: <span style="color: #080;">&#91;</span>1x11 <span style="color: #0000FF;">double</span><span style="color: #080;">&#93;</span>
        time: <span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">2</span> <span style="color: #33f;">4</span> <span style="color: #33f;">6</span> <span style="color: #33f;">8</span> <span style="color: #33f;">10</span> <span style="color: #33f;">12</span> <span style="color: #33f;">14</span> <span style="color: #33f;">16</span> <span style="color: #33f;">18</span> <span style="color: #33f;">20</span><span style="color: #080;">&#93;</span>
    newField: <span style="color:#A020F0;">'foo'</span></pre></div></div>

<p>When the names for the fields will be generated dynamically,  (i.e. at runtime) it is often prudent to ensure that the string             is a valid fieldname. Fieldnames must begin with a letter  and can contain only letters, numbers and the underscore symbol.             You can check that a string is valid with the <em>isvarname()</em> command and auto-generate a valid name from a source string with the <em>genvarname()</em> command.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">test = isvarname<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'3alpha'</span><span style="color: #080;">&#41;</span>
better = genvarname<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'3alpha'</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">test =
     <span style="color: #33f;">0</span>
better =
x3alpha</pre></div></div>

<p>We can create an array of structs all having the same  fieldnames, which allows us to build a kind of database of entries.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S = <span style="color: #0000FF;">struct</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'Name'</span>,<span style="color: #080;">&#123;</span><span style="color: #080;">&#125;</span>,<span style="color:#A020F0;">'ID'</span>,<span style="color: #080;">&#123;</span><span style="color: #080;">&#125;</span>,<span style="color:#A020F0;">'Position'</span>,<span style="color: #080;">&#123;</span><span style="color: #080;">&#125;</span><span style="color: #080;">&#41;</span>;
S<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span><span style="color: #080;">&#41;</span>.<span style="">Name</span> = <span style="color:#A020F0;">'Greg'</span>; S<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span><span style="color: #080;">&#41;</span>.<span style="">ID</span> = <span style="color:#A020F0;">'123'</span>; S<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span><span style="color: #080;">&#41;</span>.<span style="">Position</span> = <span style="color:#A020F0;">'Manager'</span>;
S<span style="color: #080;">&#40;</span><span style="color: #33f;">2</span><span style="color: #080;">&#41;</span>.<span style="">Name</span> = <span style="color:#A020F0;">'Ed'</span>  ; S<span style="color: #080;">&#40;</span><span style="color: #33f;">2</span><span style="color: #080;">&#41;</span>.<span style="">ID</span> = <span style="color:#A020F0;">'312'</span>; S<span style="color: #080;">&#40;</span><span style="color: #33f;">2</span><span style="color: #080;">&#41;</span>.<span style="">Position</span> = <span style="color:#A020F0;">'Clerk'</span>;
S<span style="color: #080;">&#40;</span><span style="color: #33f;">3</span><span style="color: #080;">&#41;</span>.<span style="">Name</span> = <span style="color:#A020F0;">'Pete'</span>; S<span style="color: #080;">&#40;</span><span style="color: #33f;">3</span><span style="color: #080;">&#41;</span>.<span style="">ID</span> = <span style="color:#A020F0;">'301'</span>; S<span style="color: #080;">&#40;</span><span style="color: #33f;">3</span><span style="color: #080;">&#41;</span>.<span style="">Position</span> = <span style="color:#A020F0;">'CEO'</span>;</pre></div></div>

<p>We can then access an individual record, itself a struct,</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">EdsRecord = S<span style="color: #080;">&#40;</span><span style="color: #33f;">2</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">EdsRecord =
        Name: <span style="color:#A020F0;">'Ed'</span>
          ID: <span style="color:#A020F0;">'312'</span>
    Position: <span style="color:#A020F0;">'Clerk'</span></pre></div></div>

<p>Or access data across all of the records at once.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #080;">&#91;</span>gID,eID,pID<span style="color: #080;">&#93;</span> = S.<span style="">ID</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">gID =
<span style="color: #33f;">123</span>
eID =
<span style="color: #33f;">312</span>
pID =
<span style="color: #33f;">301</span></pre></div></div>

<p>We can concatenate the output from the above command</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A = <span style="color: #080;">&#91;</span>S.<span style="">ID</span><span style="color: #080;">&#93;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">A =
<span style="color: #33f;">123312301</span></pre></div></div>

<p>However, when dealing with structures, its often more useful to  concatenate vertically. We can do this by using the <em>vertcat()</em> function, which is the same function called when you concatenate with  semicolons as in [A ; B]. Since we cannot control how             we get the data from the struct, we sometimes have to call  vertcat explicitly.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B = vertcat<span style="color: #080;">&#40;</span>S.<span style="">ID</span><span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">B =
<span style="color: #33f;">123</span>
<span style="color: #33f;">312</span>
<span style="color: #33f;">301</span></pre></div></div>

<p>We can create structs from cell arrays using the <em>cell2struct()</em> function and, (possibly multidimensional), cell arrays from structs  using the <em>struct2cell()</em> function.</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">data = <span style="color: #080;">&#123;</span><span style="color: #33f;">1</span>,<span style="color: #33f;">2</span>,<span style="color: #33f;">3</span>,<span style="color: #33f;">4</span><span style="color: #080;">&#125;</span>;
<span style="color: #0000FF;">fieldNames</span> = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'one'</span>,<span style="color:#A020F0;">'two'</span>,<span style="color:#A020F0;">'three'</span>,<span style="color:#A020F0;">'four'</span><span style="color: #080;">&#125;</span>;
dim = <span style="color: #33f;">2</span>;                                    <span style="color: #228B22;">%data for each fieldname is ordered along dim 2</span>
S = <span style="color: #0000FF;">cell2struct</span><span style="color: #080;">&#40;</span>data,<span style="color: #0000FF;">fieldNames</span>,dim<span style="color: #080;">&#41;</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">S =
      one: <span style="color: #33f;">1</span>
      two: <span style="color: #33f;">2</span>
    three: <span style="color: #33f;">3</span>
     four: <span style="color: #33f;">4</span></pre></div></div>

<p><a name="Example"></a></p>
<span id="Example"><h2>Example<a name="50"></a></h2></span>
<p>In the below example, we put many of the functions and  constructs just discussed to work. We load Darwin&#8217;s on the Origin of             Species into a cell array, convert to lower case, remove the  punctuation and any non-alpha characters, and sort the words             by how frequently they occur in the text.</p>
<p>Here is a link to the text. Place it somewhere on the Matlab  path before running this code.</p>
<p><a href="http://www.gutenberg.org/dirs/etext98/otoos11.txt" onclick="pageTracker._trackPageview('/outgoing/www.gutenberg.org/dirs/etext98/otoos11.txt?referer=');">http://www.gutenberg.org/dirs/etext98/otoos11.txt</a></p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">if</span><span style="color: #080;">&#40;</span><span style="color: #0000FF;">exist</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'darwin.txt'</span>,<span style="color:#A020F0;">'file'</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>  <span style="color: #228B22;">% make sure the file exists</span>
    <span style="color: #0000FF;">tic</span>                         <span style="color: #228B22;">% time how long this takes</span>
    fid = <span style="color: #0000FF;">fopen</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'darwin.txt'</span><span style="color: #080;">&#41;</span>;  <span style="color: #228B22;">% Open file</span>
    text = textscan<span style="color: #080;">&#40;</span>fid,<span style="color:#A020F0;">'%s'</span><span style="color: #080;">&#41;</span>;  <span style="color: #228B22;">% Grab every word and put it in a cell array</span>
    <span style="color: #0000FF;">fclose</span><span style="color: #080;">&#40;</span>fid<span style="color: #080;">&#41;</span>;                <span style="color: #228B22;">% Close file</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">    <span style="color: #228B22;">%one big cell is returned, unwrap it and convert to lowercase</span>
    text = <span style="color: #0000FF;">lower</span><span style="color: #080;">&#40;</span>text<span style="color: #080;">&#123;</span>:<span style="color: #080;">&#125;</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">   <span style="color: #228B22;">%delete any tokens that do not contain at least one alpha character</span>
    noAlpha = <span style="color: #0000FF;">cellfun</span><span style="color: #080;">&#40;</span>@<span style="color: #080;">&#40;</span>x<span style="color: #080;">&#41;</span>~<span style="color: #0000FF;">any</span><span style="color: #080;">&#40;</span>x<span style="color: #080;">&#41;</span>,isstrprop<span style="color: #080;">&#40;</span>text,<span style="color:#A020F0;">'alpha'</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>;
    text<span style="color: #080;">&#40;</span>noAlpha<span style="color: #080;">&#41;</span> = <span style="color: #080;">&#91;</span><span style="color: #080;">&#93;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%remove punctuation and any non-alpha characters</span>
    puncRemover = @<span style="color: #080;">&#40;</span>str<span style="color: #080;">&#41;</span>str<span style="color: #080;">&#40;</span>isstrprop<span style="color: #080;">&#40;</span>str,<span style="color:#A020F0;">'alpha'</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>;
    text = <span style="color: #0000FF;">cellfun</span><span style="color: #080;">&#40;</span>puncRemover,text,<span style="color:#A020F0;">'UniformOutput'</span>,false<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">   <span style="color: #228B22;">%find the unique words and assign them numeric ids.</span>
    <span style="color: #080;">&#91;</span>uniqueWords, numericIDs, wordOrder<span style="color: #080;">&#93;</span> = <span style="color: #0000FF;">unique</span><span style="color: #080;">&#40;</span>text<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">   <span style="color: #228B22;">%make sure the variables hold what we think they do.</span>
    assert<span style="color: #080;">&#40;</span>isequal<span style="color: #080;">&#40;</span>text,uniqueWords<span style="color: #080;">&#40;</span>wordOrder<span style="color: #080;">&#41;</span>,text<span style="color: #080;">&#40;</span>numericIDs<span style="color: #080;">&#40;</span>wordOrder<span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%count how often each word occurs.</span>
    counts = histc<span style="color: #080;">&#40;</span>wordOrder,<span style="color: #33f;">1</span>:numel<span style="color: #080;">&#40;</span>uniqueWords<span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">   <span style="color: #228B22;">%sort from most frequently occurring to least</span>
    <span style="color: #080;">&#91;</span>frequency,order<span style="color: #080;">&#93;</span> = <span style="color: #0000FF;">sort</span><span style="color: #080;">&#40;</span>counts,<span style="color:#A020F0;">'descend'</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">   <span style="color: #228B22;">%list the words from most frequently occurring to least.</span>
    sortedWords = uniqueWords<span style="color: #080;">&#40;</span>order<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%create a cell array of the frequencies</span>
    freqcell = <span style="color: #0000FF;">num2cell</span><span style="color: #080;">&#40;</span>frequency<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%create a structure from the words so that we can easily search for</span>
    <span style="color: #228B22;">%the frequency of particular words. This is basically a hashmap.</span>
    map = <span style="color: #0000FF;">cell2struct</span><span style="color: #080;">&#40;</span>freqcell,sortedWords<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%check a few words to make sure we didn't make a mistake</span>
    testWord = <span style="color: #080;">&#123;</span><span style="color:#A020F0;">'origin'</span>,<span style="color:#A020F0;">'of'</span>,<span style="color:#A020F0;">'the'</span>,<span style="color:#A020F0;">'species'</span>,<span style="color:#A020F0;">'natural'</span>,<span style="color:#A020F0;">'selection'</span><span style="color: #080;">&#125;</span>;
    test = true;
    <span style="color: #0000FF;">for</span> <span style="color: #33f;">i</span>=<span style="color: #33f;">1</span>:numel<span style="color: #080;">&#40;</span>testWord<span style="color: #080;">&#41;</span>
        test = test &amp;&amp; <span style="color: #0000FF;">sum</span><span style="color: #080;">&#40;</span><span style="color: #0000FF;">strcmp</span><span style="color: #080;">&#40;</span>testWord<span style="color: #080;">&#123;</span><span style="color: #33f;">i</span><span style="color: #080;">&#125;</span>,text<span style="color: #080;">&#41;</span><span style="color: #080;">&#41;</span> == map.<span style="color: #080;">&#40;</span>testWord<span style="color: #080;">&#123;</span><span style="color: #33f;">i</span><span style="color: #080;">&#125;</span><span style="color: #080;">&#41;</span>;
    <span style="color: #0000FF;">end</span>
    assert<span style="color: #080;">&#40;</span>test<span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%create a formatted string array of the frequencies as percentages</span>
    freqstring = <span style="color: #0000FF;">num2str</span><span style="color: #080;">&#40;</span><span style="color: #33f;">100</span>*frequency/<span style="color: #0000FF;">sum</span><span style="color: #080;">&#40;</span>frequency<span style="color: #080;">&#41;</span>,<span style="color:#A020F0;">'%2.2f'</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"> <span style="color: #228B22;">%add percentage signs and convert to a cell array</span>
    freqstring = <span style="color: #0000FF;">cellstr</span><span style="color: #080;">&#40;</span><span style="color: #080;">&#91;</span>freqstring,<span style="color: #0000FF;">repmat</span><span style="color: #080;">&#40;</span><span style="color:#A020F0;">'%'</span>,<span style="color: #0000FF;">size</span><span style="color: #080;">&#40;</span>frequency,<span style="color: #33f;">1</span><span style="color: #080;">&#41;</span>,<span style="color: #33f;">1</span><span style="color: #080;">&#41;</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span>;</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color: #228B22;">%display the top 15 words with their percent frequencies.</span>
    display<span style="color: #080;">&#40;</span><span style="color: #080;">&#91;</span>sortedWords<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">15</span><span style="color: #080;">&#41;</span>,freqstring<span style="color: #080;">&#40;</span><span style="color: #33f;">1</span>:<span style="color: #33f;">15</span>,:<span style="color: #080;">&#41;</span><span style="color: #080;">&#93;</span><span style="color: #080;">&#41;</span>;
    <span style="color: #0000FF;">toc</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;">  <span style="color:#A020F0;">'the'</span>        <span style="color:#A020F0;">'6.96%'</span>
    <span style="color:#A020F0;">'of'</span>         <span style="color:#A020F0;">'5.02%'</span>
    <span style="color:#A020F0;">'and'</span>        <span style="color:#A020F0;">'2.81%'</span>
    <span style="color:#A020F0;">'in'</span>         <span style="color:#A020F0;">'2.59%'</span>
    <span style="color:#A020F0;">'to'</span>         <span style="color:#A020F0;">'2.30%'</span>
    <span style="color:#A020F0;">'a'</span>          <span style="color:#A020F0;">'1.61%'</span>
    <span style="color:#A020F0;">'that'</span>       <span style="color:#A020F0;">'1.31%'</span>
    <span style="color:#A020F0;">'as'</span>         <span style="color:#A020F0;">'1.07%'</span>
    <span style="color:#A020F0;">'have'</span>       <span style="color:#A020F0;">'1.01%'</span>
    <span style="color:#A020F0;">'be'</span>         <span style="color:#A020F0;">'1.01%'</span>
    <span style="color:#A020F0;">'is'</span>         <span style="color:#A020F0;">'1.00%'</span>
    <span style="color:#A020F0;">'on'</span>         <span style="color:#A020F0;">'0.94%'</span>
    <span style="color:#A020F0;">'species'</span>    <span style="color:#A020F0;">'0.90%'</span>
    <span style="color:#A020F0;">'by'</span>         <span style="color:#A020F0;">'0.89%'</span>
    <span style="color:#A020F0;">'which'</span>      <span style="color:#A020F0;">'0.86%'</span>
Elapsed time <span style="color: #0000FF;">is</span> <span style="color: #33f;">11.917106</span> seconds.</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">end</span>
&nbsp;
<span style="color: #0000FF;">clear</span> <span style="color: #0000FF;">all</span>;</pre></div></div>




Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;title=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab&amp;bodytext=%0D%0A%0D%0Aby%20Matt%20%20%20%20%20%20%20%20Dunham%0D%0A%0D%0AIn%20this%20section%2C%20we%20examine%20strings%20and%20string%20operations%20%20as%20well%20as%20two%20very%20important%20Matlab%20data%20structures%3A%20cell%20arrays%2C%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20structs.%20We%20also%20examine%20various%20set-theoretic%20%20operations%20and%20end%20with%20a%20co" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_title=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab_amp_bodytext=_0D_0A_0D_0Aby_20Matt_20_20_20_20_20_20_20_20Dunham_0D_0A_0D_0AIn_20this_20section_2C_20we_20examine_20strings_20and_20string_20operations_20_20as_20well_20as_20two_20very_20important_20Matlab_20data_20structures_3A_20cell_20arrays_2C_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20and_20structs._20We_20also_20examine_20various_20set-theoretic_20_20operations_20and_20end_20with_20a_20co&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;title=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab&amp;notes=%0D%0A%0D%0Aby%20Matt%20%20%20%20%20%20%20%20Dunham%0D%0A%0D%0AIn%20this%20section%2C%20we%20examine%20strings%20and%20string%20operations%20%20as%20well%20as%20two%20very%20important%20Matlab%20data%20structures%3A%20cell%20arrays%2C%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20structs.%20We%20also%20examine%20various%20set-theoretic%20%20operations%20and%20end%20with%20a%20co" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_title=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab_amp_notes=_0D_0A_0D_0Aby_20Matt_20_20_20_20_20_20_20_20Dunham_0D_0A_0D_0AIn_20this_20section_2C_20we_20examine_20strings_20and_20string_20operations_20_20as_20well_20as_20two_20very_20important_20Matlab_20data_20structures_3A_20cell_20arrays_2C_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20and_20structs._20We_20also_20examine_20various_20set-theoretic_20_20operations_20and_20end_20with_20a_20co&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;t=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_t=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;title=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_title=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;title=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab&amp;annotation=%0D%0A%0D%0Aby%20Matt%20%20%20%20%20%20%20%20Dunham%0D%0A%0D%0AIn%20this%20section%2C%20we%20examine%20strings%20and%20string%20operations%20%20as%20well%20as%20two%20very%20important%20Matlab%20data%20structures%3A%20cell%20arrays%2C%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20structs.%20We%20also%20examine%20various%20set-theoretic%20%20operations%20and%20end%20with%20a%20co" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_title=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab_amp_annotation=_0D_0A_0D_0Aby_20Matt_20_20_20_20_20_20_20_20Dunham_0D_0A_0D_0AIn_20this_20section_2C_20we_20examine_20strings_20and_20string_20operations_20_20as_20well_20as_20two_20very_20important_20Matlab_20data_20structures_3A_20cell_20arrays_2C_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20and_20structs._20We_20also_20examine_20various_20set-theoretic_20_20operations_20and_20end_20with_20a_20co&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;title=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_title=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;t=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab&opener=bm&amp;ei=UTF-8&amp;d=%0D%0A%0D%0Aby%20Matt%20%20%20%20%20%20%20%20Dunham%0D%0A%0D%0AIn%20this%20section%2C%20we%20examine%20strings%20and%20string%20operations%20%20as%20well%20as%20two%20very%20important%20Matlab%20data%20structures%3A%20cell%20arrays%2C%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20structs.%20We%20also%20examine%20various%20set-theoretic%20%20operations%20and%20end%20with%20a%20co" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_t=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab_opener=bm_amp_ei=UTF-8_amp_d=_0D_0A_0D_0Aby_20Matt_20_20_20_20_20_20_20_20Dunham_0D_0A_0D_0AIn_20this_20section_2C_20we_20examine_20strings_20and_20string_20operations_20_20as_20well_20as_20two_20very_20important_20Matlab_20data_20structures_3A_20cell_20arrays_2C_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20_20and_20structs._20We_20also_20examine_20various_20set-theoretic_20_20operations_20and_20end_20with_20a_20co&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fstrings-cells-structs-and-sets-in-matlab.html&amp;t=Strings%2C%20Cells%2C%20Structs%2C%20and%20Sets%20in%20Matlab" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fstrings-cells-structs-and-sets-in-matlab.html_amp_t=Strings_2C_20Cells_2C_20Structs_2C_20and_20Sets_20in_20Matlab&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=2921&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/1DGFqimXKao" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/strings-cells-structs-and-sets-in-matlab.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/strings-cells-structs-and-sets-in-matlab.html</feedburner:origLink></item>
		<item>
		<title>High Definition Image Compression Technology</title>
		<link>http://feedproxy.google.com/~r/AdvancedMatlab/~3/_YAgDjWjVew/high-definition-image-compression-technology.html</link>
		<comments>http://www.advancedmcode.org/high-definition-image-compression-technology.html#comments</comments>
		<pubDate>Sun, 20 Jun 2010 07:34:29 +0000</pubDate>
		<dc:creator>Luigi Rosa</dc:creator>
				<category><![CDATA[Image processing]]></category>
		<category><![CDATA[codebook]]></category>
		<category><![CDATA[image compression]]></category>
		<category><![CDATA[image reconstruction]]></category>
		<category><![CDATA[Matlab source code]]></category>
		<category><![CDATA[neural networks]]></category>
		<category><![CDATA[quantization]]></category>

		<guid isPermaLink="false">http://www.advancedmcode.org/?p=3026</guid>
		<description><![CDATA[.: Click here to  download :.
The transport of images across communication paths is an  expensive process. Image compression provides an option for reducing the number of bits in  transmission. This in turn helps increase the volume of data transferred in a space of time, along  with reducing the cost required. It [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/2VcEafcUgA7ZWBbALvsunG20MS8/0/da"><img src="http://feedads.g.doubleclick.net/~a/2VcEafcUgA7ZWBbALvsunG20MS8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/2VcEafcUgA7ZWBbALvsunG20MS8/1/da"><img src="http://feedads.g.doubleclick.net/~a/2VcEafcUgA7ZWBbALvsunG20MS8/1/di" border="0" ismap="true"></img></a></p><p><a title="Download now Matlab code" href="http://www.advancedsourcecode.com/neuralcomprpro.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/neuralcomprpro.zip?referer=');"><strong>.: Click here to  download :.</strong></a></p>
<p>The transport of images across communication paths is an  expensive process. Image compression provides an option for reducing the number of bits in  transmission. This in turn helps increase the volume of data transferred in a space of time, along  with reducing the cost required. It has become increasingly important to most computer  networks, as the volume of data traffic has begun to exceed their capacity for transmission.  Traditional techniques that have already been identified for data compression include: Predictive  coding, Transform coding and Vector Quantization. In brief, predictive coding refers to the decorrelation of similar  neighbouring pixels within an image to remove redundancy. Following the removal of redundant  data, a more compressed image or signal may be transmitted. Transform-based  compression techniques have also been commonly employed. These techniques execute  transformations on images to produce a set of coefficients. A subset of coefficients is  chosen that allows good data representation (minimum distortion) while maintaining an adequate  amount of compression for transmission. The results achieved with a  transform-based technique is highly dependent on the choice of transformation used (cosine, wavelet,  Karhunen-Loeve etc). Finally, vector quantization techniques require the development of an  appropriate codebook to compress data. Usage of codebooks do not guarantee convergence and hence  do not necessarily deliver infallible decoding accuracy.  Also the process may be very slow for large codebooks as the process requires extensive searches through the entire  codebook. Following the review of some of the traditional techniques for image  compression, it is possible to discuss some of the more recent techniques that may be  employed for data compression.</p>
<p>Artificial Neural Networks (ANNs) have been applied to many problems,  and have demonstrated their superiority over traditional methods when dealing  with noisy or incomplete data. One such application is for image compression. Neural  networks seem to be well suited to this particular function, as they have the ability to  preprocess input patterns to produce simpler patterns with fewer components. This compressed  information (stored in a hidden layer) preserves the full information obtained from the  external environment. Not only can ANN based techniques provide sufficient compression rates of  the data in question, but security is easily maintained. This occurs because the compressed  data that is sent along a communication line is encoded and does not resemble its original form.  There have already been an exhaustive number of papers published  applying ANNs to image compression. Many different training algorithms and architectures  have been used. Some of the more notable in the literature are: nested training  algorithms used with symmetrical multilayer neural networks, Self organising maps, for  codebook generation, principal component analysis networks,  backpropagation networks, and the adaptive principal component extraction algorithm.   Apart from the existing technology on image compression represented by  series of JPEG,MPEG and H.26x standards, new technology such as neural networks and genetic algorithms are being  developed to explore the future of image coding. Successful applications of neural networks to vector  quantization have now become well established, and other aspects of neural network involvement in this area are stepping up  to play significant roles in assisting with those traditional technologies.</p>
<p>Index Terms: Matlab, source, code, neural networks, image  compression, image processing, image reconstruction, codebook, quantization.</p>
<table id="table1" style="width: 100%;" border="0">
<tbody>
<tr>
<td colspan="2" width="40%"><img src="http://www.advancedsourcecode.com/images/parrot.jpg" border="0" alt="" width="274" height="206" align="left" /></td>
<td colspan="2">
<div>
<p>Figure 1. Compressed image</p>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>A simple and effective source code for  Image Compression With Neural Networks.</p>
</div>
</td>
</tr>
<tr>
<td width="12%"><a href="http://www.advancedsourcecode.com/neuralcomprpro.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/neuralcomprpro.zip?referer=');"> <img src="http://www.advancedsourcecode.com/images/newlogo.gif" border="0" alt="" width="60" height="40" /></a></td>
<td colspan="3">
<div><a href="http://www.advancedsourcecode.com/neuralcomprpro.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/neuralcomprpro.zip?referer=');">Demo code (protected                          P-files) available for performance evaluation.</a> Matlab Image Processing Toolbox, Matlab Communications Toolbox and  Matlab Neural Network Toolbox are required.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<div><strong>Release</strong></div>
</td>
<td colspan="2">
<div><strong>Date</strong></div>
</td>
<td width="41%">
<div><strong>Major features</strong></div>
</td>
</tr>
<tr>
<td width="12%">
<div>1.0</div>
</td>
<td colspan="2">
<div><span style="color: #000040;"> </span><span style="color: #000040;">2008.10.17</span></p>
</div>
</td>
<td width="41%">
<div>
<ul>
<li>Image Compression With Neural Networks</li>
<li>High compression rate</li>
<li>Easy c/c++ implementation</li>
<li><a href="http://www.advancedsourcecode.com/neuralcomprpro.zip" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.advancedsourcecode.com/neuralcomprpro.zip?referer=');">Demo code (protected P-files) available for                              performance evaluation</a></li>
</ul>
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>
<p>We recommend to check the secure  connection to PayPal, in                          order to avoid any fraud.<br />
This donation has to be considered an  encouragement to                          improve the code itself.</p>
</div>
</td>
</tr>
<tr>
<td width="12%">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="business" type="hidden" value="luigi.rosa@tiscali.it" />
<input name="item_name" type="hidden" value="Image Compression With Neural Networks -  AdvancedSourceCode.Com" />
<input name="amount" type="hidden" value="95.00" />
<input name="no_note" type="hidden" value="1" />
<input name="currency_code" type="hidden" value="EUR" />
<input name="tax" type="hidden" value="0" />
<input name="lc" type="hidden" value="US" />
<input name="bn" type="hidden" value="PP-DonationsBF" />
<input alt="Make your donation with PayPal" name="submit" src="http://www.advancedsourcecode.com/images/x-click-butcc-donate.gif" type="image" /> </form>
</td>
<td colspan="3">
<div>Image Compression With Neural Networks &#8211; Click  here for                          your donation. In order to obtain the source  code you                          have to pay a little sum of money: 95 EUROS  (less                          than 133 U.S. Dollars).</div>
</td>
</tr>
<tr>
<td colspan="4">
<div>Once you have done this, please email us                          <a href="mailto:luigi.rosa@tiscali.it?subject=-----%20Image%20Compression%20With%20Neural%20Networks%20-----">luigi.rosa@tiscali.it</a><br />
As soon as possible (in a few days) you will  receive our                          new release of Image Compression With Neural  Networks.</p>
<p>Alternatively, you can bestow using our banking                          coordinates:</p>
<table id="table2" style="width: 100%;" border="0">
<tbody>
<tr>
<td>
<div>Name :</div>
</td>
<td>
<div>Luigi Rosa</div>
</td>
</tr>
<tr>
<td>
<div>Address :</div>
</td>
<td>
<div>Via  Centrale 35 67042 L&#8217;Aquila Italy</div>
</td>
</tr>
<tr>
<td>
<div>Bank name:</div>
</td>
<td>
<div>Poste  Italiane</div>
</td>
</tr>
<tr>
<td>
<div>Bank  address:</div>
</td>
<td>
<div>Viale  Europa 190 00144 Roma Italy</div>
</td>
</tr>
<tr>
<td>
<div>IBAN  (International Bank Account Number) :</div>
</td>
<td>
<div>IT-50-V-07601-03600-000058177916</div>
</td>
</tr>
<tr>
<td>
<div>BIC (Bank  Identifier Code) :</div>
</td>
<td>
<div>BPPIITRRXXX</div>
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
<p>The authors have no relationship or partnership                  with The Mathworks. All the code provided is written in  Matlab                  language (M-files and/or M-functions), with no dll or  other                  protected parts of code (P-files or executables). The  code was                  developed with Matlab 2006a. Matlab Image Processing  Toolbox, Matlab Communications Toolbox and Matlab Neural Network Toolbox  are required.                  The code provided has to be considered &#8220;as is&#8221; and it is  without any kind of warranty. The                  authors deny any kind of warranty concerning the code as  well                  as any kind of responsibility for problems and damages  which may                  be caused by the use of the code itself including all  parts of                  the source code.</p>



Share and Enjoy:


	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;partner=sociable" title="Print" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/printfriendly.png" title="Print" alt="Print" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;title=High%20Definition%20Image%20Compression%20Technology&amp;bodytext=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AThe%20transport%20of%20images%20across%20communication%20paths%20is%20an%20%20expensive%20process.%20Image%20compression%20provides%20an%20option%20for%20reducing%20the%20number%20of%20bits%20in%20%20transmission.%20This%20in%20turn%20helps%20increase%20the%20volume%20of%20data%20transf" title="Digg" onclick="pageTracker._trackPageview('/outgoing/digg.com/submit?phase=2_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_title=High_20Definition_20Image_20Compression_20Technology_amp_bodytext=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AThe_20transport_20of_20images_20across_20communication_20paths_20is_20an_20_20expensive_20process._20Image_20compression_20provides_20an_20option_20for_20reducing_20the_20number_20of_20bits_20in_20_20transmission._20This_20in_20turn_20helps_20increase_20the_20volume_20of_20data_20transf&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html" title="Sphinn" onclick="pageTracker._trackPageview('/outgoing/sphinn.com/index.php?c=post_amp_m=submit_amp_link=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/sphinn.png" title="Sphinn" alt="Sphinn" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;title=High%20Definition%20Image%20Compression%20Technology&amp;notes=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AThe%20transport%20of%20images%20across%20communication%20paths%20is%20an%20%20expensive%20process.%20Image%20compression%20provides%20an%20option%20for%20reducing%20the%20number%20of%20bits%20in%20%20transmission.%20This%20in%20turn%20helps%20increase%20the%20volume%20of%20data%20transf" title="del.icio.us" onclick="pageTracker._trackPageview('/outgoing/delicious.com/post?url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_title=High_20Definition_20Image_20Compression_20Technology_amp_notes=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AThe_20transport_20of_20images_20across_20communication_20paths_20is_20an_20_20expensive_20process._20Image_20compression_20provides_20an_20option_20for_20reducing_20the_20number_20of_20bits_20in_20_20transmission._20This_20in_20turn_20helps_20increase_20the_20volume_20of_20data_20transf&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;t=High%20Definition%20Image%20Compression%20Technology" title="Facebook" onclick="pageTracker._trackPageview('/outgoing/www.facebook.com/share.php?u=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_t=High_20Definition_20Image_20Compression_20Technology&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mixx.com/submit?page_url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;title=High%20Definition%20Image%20Compression%20Technology" title="Mixx" onclick="pageTracker._trackPageview('/outgoing/www.mixx.com/submit?page_url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_title=High_20Definition_20Image_20Compression_20Technology&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/mixx.png" title="Mixx" alt="Mixx" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;title=High%20Definition%20Image%20Compression%20Technology&amp;annotation=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AThe%20transport%20of%20images%20across%20communication%20paths%20is%20an%20%20expensive%20process.%20Image%20compression%20provides%20an%20option%20for%20reducing%20the%20number%20of%20bits%20in%20%20transmission.%20This%20in%20turn%20helps%20increase%20the%20volume%20of%20data%20transf" title="Google Bookmarks" onclick="pageTracker._trackPageview('/outgoing/www.google.com/bookmarks/mark?op=edit_amp_bkmk=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_title=High_20Definition_20Image_20Compression_20Technology_amp_annotation=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AThe_20transport_20of_20images_20across_20communication_20paths_20is_20an_20_20expensive_20process._20Image_20compression_20provides_20an_20option_20for_20reducing_20the_20number_20of_20bits_20in_20_20transmission._20This_20in_20turn_20helps_20increase_20the_20volume_20of_20data_20transf&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a  href="http://blogplay.com" title="Blogplay" onclick="pageTracker._trackPageview('/outgoing/blogplay.com?referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/blogplay.png" title="Blogplay" alt="Blogplay" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;title=High%20Definition%20Image%20Compression%20Technology" title="Live" onclick="pageTracker._trackPageview('/outgoing/favorites.live.com/quickadd.aspx?marklet=1_amp_url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_title=High_20Definition_20Image_20Compression_20Technology&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.printfriendly.com/print?url=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;partner=sociable" title="PDF" onclick="pageTracker._trackPageview('/outgoing/www.printfriendly.com/print?url=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_partner=sociable&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/pdf.png" title="PDF" alt="PDF" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html" title="Technorati" onclick="pageTracker._trackPageview('/outgoing/technorati.com/faves?add=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://twitter.com/home?status=High%20Definition%20Image%20Compression%20Technology%20-%20http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html" title="Twitter" onclick="pageTracker._trackPageview('/outgoing/twitter.com/home?status=High_20Definition_20Image_20Compression_20Technology_20-_20http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://bookmarks.yahoo.com/toolbar/savebm?u=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;t=High%20Definition%20Image%20Compression%20Technology&opener=bm&amp;ei=UTF-8&amp;d=.%3A%20Click%20here%20to%20%20download%20%3A.%0D%0A%0D%0AThe%20transport%20of%20images%20across%20communication%20paths%20is%20an%20%20expensive%20process.%20Image%20compression%20provides%20an%20option%20for%20reducing%20the%20number%20of%20bits%20in%20%20transmission.%20This%20in%20turn%20helps%20increase%20the%20volume%20of%20data%20transf" title="Yahoo! Bookmarks" onclick="pageTracker._trackPageview('/outgoing/bookmarks.yahoo.com/toolbar/savebm?u=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_t=High_20Definition_20Image_20Compression_20Technology_opener=bm_amp_ei=UTF-8_amp_d=._3A_20Click_20here_20to_20_20download_20_3A._0D_0A_0D_0AThe_20transport_20of_20images_20across_20communication_20paths_20is_20an_20_20expensive_20process._20Image_20compression_20provides_20an_20option_20for_20reducing_20the_20number_20of_20bits_20in_20_20transmission._20This_20in_20turn_20helps_20increase_20the_20volume_20of_20data_20transf&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/yahoomyweb.png" title="Yahoo! Bookmarks" alt="Yahoo! Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="javascript:AddToFavorites();" title="Add to favorites"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/addtofavorites.png" title="Add to favorites" alt="Add to favorites" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="mailto:?subject=High%20Definition%20Image%20Compression%20Technology&amp;body=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html" title="email"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.advancedmcode.org%2Fhigh-definition-image-compression-technology.html&amp;t=High%20Definition%20Image%20Compression%20Technology" title="MySpace" onclick="pageTracker._trackPageview('/outgoing/www.myspace.com/Modules/PostTo/Pages/?u=http_3A_2F_2Fwww.advancedmcode.org_2Fhigh-definition-image-compression-technology.html_amp_t=High_20Definition_20Image_20Compression_20Technology&amp;referer=');"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.advancedmcode.org/feed" title="RSS"><img src="http://www.advancedmcode.org/home/wp-content/plugins/sociable/images/rss.png" title="RSS" alt="RSS" class="sociable-hovers" /></a>


<br/><br/><img src="http://www.advancedmcode.org/home/?ak_action=api_record_view&id=3026&type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/AdvancedMatlab/~4/_YAgDjWjVew" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.advancedmcode.org/high-definition-image-compression-technology.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.advancedmcode.org/high-definition-image-compression-technology.html</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 10.947 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-08-31 11:43:59 -->
