<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.igorexchange.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>All new activity</title>
 <link>http://www.igorexchange.com/forum_tracker_new</link>
 <description>This feed contains all new activity that has been posted and the user has not seen.</description>
 <language>en-US</language>
<item>
 <title>Copy wave and paste as new wave with arithmatic option</title>
 <link>http://www.igorexchange.com/node/3051</link>
 <description>&lt;p&gt;Hi&lt;br /&gt;
I wanted to have a menu for &quot;wave copy&quot; from a existed table and then it will be pasted as a &quot;new wave&quot; in the same table where &quot;new wave&quot; = &quot;old wave&quot; +-x/ &quot;new wave&quot;  and I should have GUI to select +,-,x, or /. Can anybody tell me &lt;/p&gt;
&lt;p&gt;a) How I can add checkboxes in the GUI to select +-x/ .&lt;br /&gt;
b) How I can keep the GUI panel still visible even after I click &quot;ok&quot; and a option to &quot;Undo&quot; the operation that I have done.&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw5&quot;&gt;#pragma&lt;/span&gt; rtGlobals=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;		&lt;span class=&quot;co1&quot;&gt;// Use modern global access method.&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Menu&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Column Math&amp;quot;&lt;/span&gt;
      &lt;span class=&quot;st0&quot;&gt;&amp;quot;Column MathA/1&amp;quot;&lt;/span&gt;, copy22&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Function&lt;/span&gt; copy22&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;AorB&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; AorB        &lt;span class=&quot;co1&quot;&gt;// 0 for A, 1 for B&lt;/span&gt;
 
      &lt;span class=&quot;kw2&quot;&gt;String&lt;/span&gt; tableName = &lt;span class=&quot;kw3&quot;&gt;WinName&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;0, &lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt;,&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
      &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;strlen&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;tableName&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; == 0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
              &lt;span class=&quot;kw4&quot;&gt;Abort&lt;/span&gt;  &lt;span class=&quot;st0&quot;&gt;&amp;quot;There are no tabels&amp;quot;&lt;/span&gt;
      &lt;span class=&quot;kw1&quot;&gt;endif&lt;/span&gt;
 
&lt;span class=&quot;kw4&quot;&gt;GetSelection&lt;/span&gt; table, &lt;span class=&quot;re0&quot;&gt;$tableName&lt;/span&gt;, &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;      &lt;span class=&quot;co1&quot;&gt;//Get selection row and column indices&lt;/span&gt;
 
       &lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; startColumn = V_startCol               &lt;span class=&quot;co1&quot;&gt;//Index of first selected column &lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Wave&lt;/span&gt; y2 = &lt;span class=&quot;kw3&quot;&gt;WaveRefindexed&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;tableName, startColumn, &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
 
&lt;span class=&quot;kw4&quot;&gt;Duplicate&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;O y2, wave0_y2
 
&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; term=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;
 
	&lt;span class=&quot;kw2&quot;&gt;Prompt&lt;/span&gt; term, &lt;span class=&quot;st0&quot;&gt;&amp;quot;Enter parameter: &amp;quot;&lt;/span&gt;		&lt;span class=&quot;co1&quot;&gt;// Set prompt for XRange param&lt;/span&gt;
	&lt;span class=&quot;kw2&quot;&gt;DoPrompt&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Enter parameter&amp;quot;&lt;/span&gt;, term
 
	&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;V_Flag&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; -&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;								&lt;span class=&quot;co1&quot;&gt;// User canceled&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;endif&lt;/span&gt;
 
wave0_y2 = wave0_y2 + term
&lt;span class=&quot;kw4&quot;&gt;AppendToTable&lt;/span&gt; wave0_y2
 
     &lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3051#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Tue, 15 May 2012 14:30:42 -0700</pubDate>
 <dc:creator>supra</dc:creator>
 <guid isPermaLink="false">3051 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>3D - Histogram creation help needed</title>
 <link>http://www.igorexchange.com/node/3034</link>
 <description>&lt;p&gt;I have a batch of thousand bmp images that are labelled in sequence (file name followed by a number). I need to make a 3D histogram for all these images combined and then do statistical analysis on this. By 3D histogram, I mean the histogram corresponding to each image in the batch all stacked together to form a surface plot. Any advice would be appreciated.&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3034#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Fri, 11 May 2012 06:51:25 -0700</pubDate>
 <dc:creator>channagiri.1</dc:creator>
 <guid isPermaLink="false">3034 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Easy way to mask waves?</title>
 <link>http://www.igorexchange.com/node/2690</link>
 <description>&lt;p&gt;It seems like there should be a really easy way to mask waves, but I haven&#039;t been able to figure one out so far.  For example, I might have to waves of the same length and I would like to delete all the points from the first wave where the corresponding point on the second wave is zero.  The way I&#039;ve been doing this so far is embarrassingly hackey:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;targetwave = targetwave/(maskwave==0)&lt;br /&gt;
WaveTransform zapINFs targetwave&lt;br /&gt;
WaveTransform zapNaNs targetwave // 0/0 = NaN&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;This has the obvious problem that it gets rid of any NaNs and INFs that should be in targetwave.  What&#039;s the proper way to do this?  Thanks&lt;/p&gt;
&lt;p&gt;-Alex&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/2690#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Mon, 02 Jan 2012 11:41:44 -0800</pubDate>
 <dc:creator>amellnik</dc:creator>
 <guid isPermaLink="false">2690 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Greek Letters in Legend/Axis Titles</title>
 <link>http://www.igorexchange.com/node/3029</link>
 <description>&lt;p&gt;I know you can insert Greek letters in Igor using the Symbol font, but it would be really awesome for all Greek letters (both uppercase and lowercase) to be available in Special-&amp;gt; Character. In a scientific field we use them a lot as a one-off for a word (ie D_alpha.)&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3029#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/87">Igor Pro Wish List</category>
 <pubDate>Wed, 09 May 2012 13:18:20 -0700</pubDate>
 <dc:creator>kathreen</dc:creator>
 <guid isPermaLink="false">3029 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Save wave &quot;tweak&quot; preferences; perform an action for each loaded wave</title>
 <link>http://www.igorexchange.com/node/3053</link>
 <description>&lt;p&gt;Hello!&lt;/p&gt;
&lt;p&gt;Two questions:&lt;/p&gt;
&lt;p&gt;1) How do I make using the &quot;space&quot; delimiter character a default? I currently go to Load Data &amp;gt; Tweaks and check this option, but Igor resets to the default (unchecked &quot;spaces&quot;) when I reopen.&lt;/p&gt;
&lt;p&gt;2) I will many times want to open a data file with different numbers of columns, and then perform the same actions on every loaded wave (histogram, then graph).  The wave names will be read from the first line of the data file, and will change from one file to the next.  Is there a syntax for doing someone on every wave loaded?&lt;/p&gt;
&lt;p&gt;Thank you,&lt;br /&gt;
-Heather&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3053#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Wed, 16 May 2012 13:11:43 -0700</pubDate>
 <dc:creator>hmayes</dc:creator>
 <guid isPermaLink="false">3053 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Commentize/Decommentize Keyboard Shortcuts</title>
 <link>http://www.igorexchange.com/node/1254</link>
 <description>&lt;p&gt;Having Command-{ and Command-} (with corresponding Windows equivalents) as shortcuts to &quot;Commentize&quot; and &quot;Decommentize&quot; procedure code blocks would be useful. (Also, I have always preferred the menu commands Comment and Uncomment as found in TeXShop on MacOS over the above phrasings).&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/1254#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/87">Igor Pro Wish List</category>
 <pubDate>Sun, 22 Nov 2009 09:47:20 -0800</pubDate>
 <dc:creator>jjweimer</dc:creator>
 <guid isPermaLink="false">1254 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Include with Adopt</title>
 <link>http://www.igorexchange.com/node/3052</link>
 <description>&lt;p&gt;I have shared procedure files on the network that need to be automatically loaded and incorporated (adopted) in the experiment.  The standard #include directive does not do this.  Manually, I can adopt a procedure using &quot;File&quot;, &quot;Adopt Procedure...&quot;.  But how can do this automatically?  Does this functionality exist?  Is there a better way to do what I want: import a procedure file and sever the connection to the original?&lt;/p&gt;
&lt;p&gt;If this feature does not exist, could you create a special &quot;adopt&quot; flag to the #include directive?&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Cheers&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3052#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/87">Igor Pro Wish List</category>
 <pubDate>Wed, 16 May 2012 02:33:46 -0700</pubDate>
 <dc:creator>agarttha</dc:creator>
 <guid isPermaLink="false">3052 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Editing single point in matrix</title>
 <link>http://www.igorexchange.com/node/2849</link>
 <description>&lt;p&gt;Hello&lt;/p&gt;
&lt;p&gt;Before reading on I am aware this is an extremely basic question, however after consulting the Igor Manual and this forum I&#039;ve been unable to find an answer to it.&lt;/p&gt;
&lt;p&gt;The function below is intended to read through all the data points in a matrix and change any values above 100000 (which indicates a dead pixel in the detector) to zero/NaN.&lt;br /&gt;
However I have been unable to find a command that can edit a single point; when doing this manually the command window displayed &#039;Edit Wavename.Id&#039; which sadly is of no use in a function.&lt;/p&gt;
&lt;p&gt;&lt;Igor&gt;&lt;/p&gt;
&lt;p&gt;Function Removedeadpixels(thewave)&lt;br /&gt;
Wave thewave&lt;br /&gt;
variable xx, yy, zz&lt;br /&gt;
	xx=0&lt;br /&gt;
		do&lt;br /&gt;
			yy=0&lt;br /&gt;
			do&lt;br /&gt;
				zz= thewave [xx][yy]&lt;br /&gt;
					if(zz&amp;gt;=100000)&lt;br /&gt;
						zz=0//Syntax for editing a data point?&lt;br /&gt;
					endif&lt;br /&gt;
				yy=yy+1&lt;br /&gt;
			while (yy&amp;lt;=487)&lt;br /&gt;
		xx=xx+1&lt;br /&gt;
		while (xx&amp;lt;=195)&lt;br /&gt;
End&lt;/p&gt;
&lt;p&gt;&lt;/Igor&gt;&lt;/p&gt;
&lt;p&gt;Also in it&#039;s current form would the function save the changes in the wave if it is in a string when used in other functions?&lt;/p&gt;
&lt;p&gt;Thanks in advance&lt;br /&gt;
Jon&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/2849#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 01 Mar 2012 02:33:35 -0800</pubDate>
 <dc:creator>Jonpope</dc:creator>
 <guid isPermaLink="false">2849 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Strange command-line printing behavior</title>
 <link>http://www.igorexchange.com/node/3032</link>
 <description>&lt;p&gt;I have just reinstalled IP 6.22A on a new Windows 7 PC, and see some strange printing behavior in the History/Command-Line. I want to print the value of a global variable, Gwidth, that happens to have value 2. It appears like:&lt;br /&gt;
&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;•&lt;span class=&quot;kw4&quot;&gt;print&lt;/span&gt; Gwidth
  2int Gwidth
•&lt;span class=&quot;kw4&quot;&gt;printf&lt;/span&gt;  &lt;span class=&quot;st0&quot;&gt;&amp;quot;%g&lt;span class=&quot;es0&quot;&gt;\r&lt;/span&gt;&amp;quot;&lt;/span&gt;, Gwidth
  2intf &lt;span class=&quot;st0&quot;&gt;&amp;quot;%/g&lt;span class=&quot;es0&quot;&gt;\r&lt;/span&gt;&amp;quot;&lt;/span&gt;, Gwidth&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;What is also odd, is that when I copied and pasted the History lines into the above extract, it appeared correct. I edited it to show what my PC monitor displays. It appears that the monitor output result is the echoed print command, over-written by the variable value. Has anyone else encountered this?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3032#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 10 May 2012 04:13:46 -0700</pubDate>
 <dc:creator>s.r.chinn</dc:creator>
 <guid isPermaLink="false">3032 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Unclear on coding structure to optimize fit with Main event loop speed</title>
 <link>http://www.igorexchange.com/node/3048</link>
 <description>&lt;p&gt;I realize that IGOR has evolved - as has desktop computer hardware.  Certainly the IGOR program must be controlled from hogging too much CPU time or getting ahead of windows routines to avoid problems.  That is what something such are main loop speed is about, yes?&lt;/p&gt;
&lt;p&gt;Current desktop systems with multicore 3ghz CPUs, SATA3 and USB3 are able to process input and deliver output many times faster than 15 years ago.  Given that many users are able to work from such modern systems; can there be a way to tailor the loop speed for newer hardware and modern OSes?  A setup value in the registry or such that can be altered to allow for a faster loop speed would have some benefit.&lt;/p&gt;
&lt;p&gt;My application evolved from analysis of spectral waveform data into a more comprehensive control system which uses the convenient VISA functions to arm and read data from scopes, thus to also acquire the data.  Over time this easy and helpful system has shown much utility.  There is, of course, a constant goal of increasing capability, and thus acquisition speed.&lt;/p&gt;
&lt;p&gt;Reading about feedback control problems (&lt;a href=&quot;http://www.igorexchange.com/node/2624&quot; title=&quot;http://www.igorexchange.com/node/2624&quot; rel=&quot;nofollow&quot;&gt;http://www.igorexchange.com/node/2624&lt;/a&gt;) I&#039;ve realize I don&#039;t really have a way to understand how IGORs &quot;main control loop speed&quot; affects the way code in the .ipf files is written and executed.  If something obvious such as avoiding do/while for/next loops would increase execution speed 100 times it certainly would make users happy.&lt;/p&gt;
&lt;p&gt;I can guess a number of possibilities for what main loop speed is/does:&lt;br /&gt;
Speed at idle at which IGOR checks for user input&lt;br /&gt;
speed at which subroutines are triggered when called&lt;br /&gt;
speed at which XOPs are triggered when called&lt;br /&gt;
speed of executing individual command lines&lt;br /&gt;
speed of do/while for/next loops&lt;/p&gt;
&lt;p&gt;Many coding options, subroutines, do/while loops, are written mostly for legibility rather than necessity.  If structuring to use subroutines, or do/while for/next loops causes everything to pause and wait for another 20ms main loop to trigger, then I would want to change how I code in certain time critical places.&lt;/p&gt;
&lt;p&gt;Any direct information or links would certainly be appreciated.&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3048#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Mon, 14 May 2012 10:26:53 -0700</pubDate>
 <dc:creator>fltcoils</dc:creator>
 <guid isPermaLink="false">3048 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Digital map of the world</title>
 <link>http://www.igorexchange.com/node/3049</link>
 <description>&lt;p&gt;In the GIS utilities a link and related input format support is given for a digital map of the world that does not appear to be accessible anymore.&lt;br /&gt;
I would be most grateful if someone could point me to a link to digital map information in vector form (political boundaries, rivers, cities etc) that can be put into IGOR via its GIS utilities.  Direct access to any such data sets would be highly appreciated, likewise input routines for GIS files with current formats such as shapefiles.&lt;br /&gt;
Thanks very much in advance&lt;br /&gt;
Jost&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3049#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/87">Igor Pro Wish List</category>
 <pubDate>Mon, 14 May 2012 23:04:33 -0700</pubDate>
 <dc:creator>jost</dc:creator>
 <guid isPermaLink="false">3049 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Update traces using a popup menu</title>
 <link>http://www.igorexchange.com/node/3044</link>
 <description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Does anyone have a procedure to update the Y wave in a graph using a popup menu (subwindow)? I have tried using ReplaceWave in the procedure of the popupMenu control, but that doesn&#039;t work more than one time, as the current wave would be different from the original wave when I try to change it a second time.&lt;/p&gt;
&lt;p&gt;Any suggestion will be appreciated.&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3044#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <enclosure url="http://www.igorexchange.com/image/view/3043/preview" length="122742" type="image/png" />
 <pubDate>Sun, 13 May 2012 20:21:54 -0700</pubDate>
 <dc:creator>temasi</dc:creator>
 <guid isPermaLink="false">3044 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Extracting a matrix from within a matrix</title>
 <link>http://www.igorexchange.com/node/3047</link>
 <description>&lt;p&gt;Hello&lt;/p&gt;
&lt;p&gt;I am attempting to extract a square area (containing a peak) from a large 2D wave as a secondary wave.&lt;/p&gt;
&lt;p&gt;Thus far I have simply been using the total intensity within the square, which is defined by a number of pixels around a selected point e.g. PeakPosP+15,PeakPosP-15, PeakPosQ+15, PeakPosQ-15 with (PeakPosP, PeakPosQ) being selected either manually or using the V_maxrowloc, V_maxcolloc variables from the ImageStats command.&lt;/p&gt;
&lt;p&gt;However I am now looking to carry out curve fitting on the area contained within the square and therefore need to keep the point values intact.&lt;/p&gt;
&lt;p&gt;Is there any command with which I could duplicate a selected portion of the matrix? Or would it be a case of using the Make command allocating values for all the points afterward?&lt;/p&gt;
&lt;p&gt;As always your help is greatly appreciated.&lt;/p&gt;
&lt;p&gt;Regards&lt;br /&gt;
Jon&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3047#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Mon, 14 May 2012 07:27:31 -0700</pubDate>
 <dc:creator>Jonpope</dc:creator>
 <guid isPermaLink="false">3047 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Manipulating Gizmo Window Recreation Macros</title>
 <link>http://www.igorexchange.com/node/3033</link>
 <description>&lt;p&gt;I have Igor 6.2.  I created a Gizmo window showing an image in the Z=0 plane and a movable spectroscopy slice in the vertical.  Now I have to do the same thing for a bunch of others.  It seems like the command line can&#039;t do everything in Gizmo like select all the various options in the slicer dialogues (and if I&#039;m wrong please correct me since it will make the following moot; I can just put all the commands in the Igor Text File.)  I noticed that despite this, Igor can create Gizmo window recreation macros that reproduce everything faithfully but there&#039;s doesn&#039;t seem to be a way to access the recreation macros for Gizmo.  I saved an unpacked copy of the file to see if I could find it there but no such luck.  If I could have access to this I&#039;d just need to change the name of two waves and I&#039;d be good.&lt;/p&gt;
&lt;p&gt;Is this possible?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3033#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 10 May 2012 08:36:34 -0700</pubDate>
 <dc:creator>jmcclimo2003</dc:creator>
 <guid isPermaLink="false">3033 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>How to make scatter plot with markers not overlapping</title>
 <link>http://www.igorexchange.com/node/1779</link>
 <description>&lt;p&gt;When I tried to plot a x-y 2D wave graph the marker always overlap when they have a same value.  However, I hope to show the data in a way as the image attached showing that is the markers for the same or very close value won&#039;t totally overlap but scattered horizontally.  Can I do this in Igor Pro?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/1779#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <enclosure url="http://www.igorexchange.com/image/view/1778/preview" length="20456" type="image/png" />
 <pubDate>Thu, 30 Sep 2010 14:16:46 -0700</pubDate>
 <dc:creator>wwzhang2</dc:creator>
 <guid isPermaLink="false">1779 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Problem with curve fit</title>
 <link>http://www.igorexchange.com/node/3040</link>
 <description>&lt;p&gt;I would like to reproduce this result, i e have the Covariance matrix parameters printed after completion of curvefit&lt;/p&gt;
&lt;p&gt;//¥CurveFit/M=2 Power  Temperature[3,] /X=T_Us /W=Temperature_Err /I=1 /D /R /F={0.683000, 1}&lt;br /&gt;
//  Fit converged properly&lt;br /&gt;
//  Curve fit with data subrange:&lt;br /&gt;
//  	Row: 3, 30&lt;br /&gt;
//  fit_Temperature= W_coef[0]+W_coef[1]*x^W_coef[2]&lt;br /&gt;
//  Res_Temperature= Temperature - (W_coef[0]+W_coef[1]*T_Us^W_coef[2])&lt;br /&gt;
//  W_coef={1421.9,4.3185,2.9768}&lt;br /&gt;
//  V_chisq= 31.0292; V_npnts= 28; V_numNaNs= 0; V_numINFs= 0;&lt;br /&gt;
//  V_startRow= 3; V_endRow= 30; V_startCol= 0; V_endCol= 0;&lt;br /&gt;
//  W_sigma={394,0.909,0.0656}&lt;br /&gt;
//  Coefficient values ± one standard deviation&lt;br /&gt;
//  	y0  	= 1421.9 ± 394&lt;br /&gt;
//  	A   	= 4.3185 ± 0.909&lt;br /&gt;
//  	pow 	= 2.9768 ± 0.0656&lt;br /&gt;
//  M_Covar[0][0]= {155471,-340.136,24.3494}&lt;br /&gt;
//  M_Covar[0][1]= {-340.136,0.825423,-0.059566}&lt;br /&gt;
//  M_Covar[0][2]= {24.3494,-0.059566,0.00430317}&lt;/p&gt;
&lt;p&gt;however&lt;br /&gt;
 even using /M=2 i do not the M_Covar results, even though a can edit M_Covar. Is there a way to specify we want them print?&lt;/p&gt;
&lt;p&gt;I tried&lt;br /&gt;
CurveFit/M=2 HillEquation  FS_Refl (,35)/X=Us (,35)/W=FS_Refl_Err(,35) /I=1 /D&lt;br /&gt;
 but i got &lt;/p&gt;
&lt;p&gt;  Fit converged properly&lt;br /&gt;
  Curve fit with data subrange:&lt;br /&gt;
	FS_Refl[0,35]&lt;br /&gt;
  fit_FS_Refl= W_coef[0]+(W_coef[1]-W_coef[0])*(x^W_coef[2]/(x^W_coef[2]+W_coef[3]^W_coef[2]))&lt;br /&gt;
  W_coef={0.0064212,0.34443,8.033,13.789}&lt;br /&gt;
  V_chisq= 1.2633;V_npnts= 36;V_numNaNs= 0;V_numINFs= 0;&lt;br /&gt;
  V_startRow= 0;V_endRow= 35;&lt;br /&gt;
  W_sigma={0.00379,0.0131,1.12,0.324}&lt;br /&gt;
  Coefficient values ± one standard deviation&lt;br /&gt;
  	base 	=0.0064212 ± 0.00379&lt;br /&gt;
  	max  	=0.34443 ± 0.0131&lt;br /&gt;
  	rate 	=8.033 ± 1.12&lt;br /&gt;
  	xhalf	=13.789 ± 0.324&lt;/p&gt;
&lt;p&gt;Many thanks&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3040#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Fri, 11 May 2012 16:49:38 -0700</pubDate>
 <dc:creator>millot1</dc:creator>
 <guid isPermaLink="false">3040 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Double axis</title>
 <link>http://www.igorexchange.com/node/3038</link>
 <description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I would like to, after inserting another Y axis, to have the number labels outside the graph box. I will add a picture for a better understanding of what I&#039;m trying to say, I would like to move the content inside the black dashed box to where the dashed line is.&lt;/p&gt;
&lt;p&gt;Thanks in advance,&lt;/p&gt;
&lt;p&gt;Gabriel&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3038#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <enclosure url="http://www.igorexchange.com/image/view/3037/preview" length="40297" type="image/jpeg" />
 <pubDate>Fri, 11 May 2012 13:10:22 -0700</pubDate>
 <dc:creator>gzvitiello</dc:creator>
 <guid isPermaLink="false">3038 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Creating N number of waves</title>
 <link>http://www.igorexchange.com/node/3039</link>
 <description>&lt;p&gt;I&#039;m trying to make a procedure that automates the following process and I got stuck.&lt;br /&gt;
I have waves that have a multiple of 1024 points (1024 x N points).&lt;br /&gt;
I&#039;m trying to decompose these waves into N number of waves, each with 1024 points, whose names are wave_N.&lt;br /&gt;
I know how to decompose waves having 1024 points each, but I&#039;m not sure how to make N number of waves depending on the number of points I have in the starting wave (1024 x N points).&lt;br /&gt;
Does anyone know how you would make N number of waves in this case?&lt;br /&gt;
Thank you.&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3039#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Fri, 11 May 2012 14:39:02 -0700</pubDate>
 <dc:creator>isk8</dc:creator>
 <guid isPermaLink="false">3039 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Bootstrapping a Package Loader</title>
 <link>http://www.igorexchange.com/node/3024</link>
 <description>&lt;p&gt;The folowing code is the content of an Independent Module used to load/unload a package.  It also creates a menu item that changes between &quot;Load Package&quot; and &quot;Unload Package&quot; based on the existance of a global symbol when the module is compiled.  This global symbol is created on package load and destroyed on package unload.  The idea was to enable the automatic creation of the appropriate menu when a new experiment was created or when an old one was opened and the mechanics of the package loading/unloading could be completely invisible to the user, other than the menu item.  The package loader is always loaded when Igor starts, via a shortcut in the Igor Procedures directory.  &lt;/p&gt;
&lt;p&gt;This works fine within an Igor session but does not work if Igor is shut down and an old experiment opened again.  I thought that I had demonstrated to myself that this method of detecting whether the package was loaded or not worked when I devised it several months ago.  The probem, as far as I can tell, is that the global symbol is not saved with the experiment.  Is this the expected Igor behavior?  Did I miss something in reading about symbols?&lt;/p&gt;
&lt;p&gt;If the global symbol idea is not viable, what alternative methods are there?  At the present time, the package does not require a package data folder and I wanted to avoid creating one just to remember the package load/unload state.  This certainly could be done.  A dummy procedure could be loaded as part of the package and that could be searched for to determine whether or not the package was loaded.  Is it possible to determine whether user defined menus exist?  I see there are several functions for working with built in menus, but haven&#039;t been able to find anything related to user defined menus.  This might server as a means to detecte the package state.  Any ideas or opinions?&lt;/p&gt;
&lt;p&gt;System is Win7, Igor V6.22A&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Jeff&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw5&quot;&gt;#pragma&lt;/span&gt; rtGlobals=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;		&lt;span class=&quot;co1&quot;&gt;// Use modern global access method.&lt;/span&gt;
&lt;span class=&quot;kw5&quot;&gt;#pragma&lt;/span&gt; IndependentModule= AFM_PackageLoader
 
#ifndef AFM_PackageLoader
	&lt;span class=&quot;kw2&quot;&gt;Menu&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;jtgSpectroscopy&amp;quot;&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;SubMenu&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Packages...&amp;quot;&lt;/span&gt;  
			&lt;span class=&quot;st0&quot;&gt;&amp;quot;Load AFM Package&amp;quot;&lt;/span&gt;, &lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;, LoadAFMPackage&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
			help = &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Loads the set of procedures related to Atomic Force Microscopy.&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;	
	&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;
#else
	&lt;span class=&quot;kw2&quot;&gt;Menu&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;jtgSpectroscopy&amp;quot;&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;SubMenu&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;Packages...&amp;quot;&lt;/span&gt;
			&lt;span class=&quot;st0&quot;&gt;&amp;quot;Unload AFM Package&amp;quot;&lt;/span&gt;, &lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;, UnloadAFMPackage&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
			help = &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;Removes the set of procedures related to Atomic Force Microscopy.&amp;quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;
	&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;
#endif
 
&lt;span class=&quot;co1&quot;&gt;//package loader&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//&amp;quot;SetIgorOption poundDefine=AFM_PackageLoader&amp;quot; defines a global symbol&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//that the force curve analysis package uses to add a &amp;quot;remove package&amp;quot; menu item&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;Function&lt;/span&gt; LoadAFMPackage&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;INSERTINCLUDE &lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;AFM_ForceCurveAnalysis&lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;INSERTINCLUDE &lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;AFM_MultiFileLoader&lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;SetIgorOption poundDefine=AFM_PackageLoader&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;COMPILEPROCEDURES &amp;quot;&lt;/span&gt;	
&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;
 
&lt;span class=&quot;co1&quot;&gt;//package unloader&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//&amp;quot;SetIgorOption poundunDefine=AFM_PackageLoader&amp;quot; clears a global symbol&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//that the force curve analysis package uses to add a remove package menu item&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;Function&lt;/span&gt; UnloadAFMPackage&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;DELETEINCLUDE &lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;AFM_ForceCurveAnalysis&lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;DELETEINCLUDE &lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;AFM_MultiFileLoader&lt;span class=&quot;es0&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;SetIgorOption poundunDefine=AFM_PackageLoader&amp;quot;&lt;/span&gt;
	&lt;span class=&quot;kw4&quot;&gt;Execute&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;P&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&amp;quot;COMPILEPROCEDURES &amp;quot;&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;End&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3024#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 03 May 2012 08:00:09 -0700</pubDate>
 <dc:creator>jtigor</dc:creator>
 <guid isPermaLink="false">3024 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Igor in Linux using WINE</title>
 <link>http://www.igorexchange.com/node/1098</link>
 <description>&lt;p&gt;While I continue to use Windows on computers that control instruments, I now use Linux on the machine on which I do analysis (and everything else).  For a long time, a major barrier to long-term Linux use was Igor compatibility, namely that there are only official versions of Igor for Mac and Windows.  However, since Igor appears to use the Win32 API almost exclusively for the Windows edition, it is possible to run Igor with the help of a free program in Linux called &quot;WINE&quot;, which implements the Win32 API fairly well.  To the user, everything is transparent; setup of Igor proceeds as in Windows, and you can double-click to run Igor just like you were running it in Windows.  There appears to be little of no loss of speed for most tasks in Igor.  &lt;/p&gt;
&lt;p&gt;There are, however, a small number of discrepancies between running Igor for Windows in Windows, and running Igor for Windows in Linux using WINE.  Most of these are small, and don&#039;t stop me from using it.  But some of these may be significant enough to cause problems for some users.  The purpose of this thread is to document the inconsistencies (not really bugs, since Linux was not intended by Wavemetrics), the circumstances under which they occur, and any possible workarounds.  Some of these may be fixable by changing one&#039;s OS or desktop environment settings, others may be fixable by modifying the WINE source code (an open source project), and others may be fixable by Wavemetrics (but don&#039;t count on that -- I&#039;m sure their priority is Windows/Mac).  &lt;/p&gt;
&lt;p&gt;So I propose that posts be formatted something like:&lt;br /&gt;
  -- Name and Version of Linux Distribution&lt;br /&gt;
  -- (Optional): Graphics information (desktop environment, e.g. KDE vs Gnome, graphics card/drivers, X11 version)&lt;br /&gt;
  -- WINE version&lt;br /&gt;
  -- Igor version&lt;br /&gt;
  -- Summary of problem&lt;/p&gt;
&lt;p&gt;I will follow up later with posts describing some of the discrepancies that I have observed.  &lt;/p&gt;
&lt;p&gt;Rick&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/1098#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 25 Jun 2009 09:53:09 -0700</pubDate>
 <dc:creator>RGerkin</dc:creator>
 <guid isPermaLink="false">1098 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Methods for generating/storing a random number of variables?</title>
 <link>http://www.igorexchange.com/node/3031</link>
 <description>&lt;p&gt;I have a data set(wave), of random length.  I want to generate variables (lets say anywhere from 3 to 10 of them) based on this length, for logical operations on my data.  I realized pretty quickly that I couldn&#039;t use a for loop and create variable_i as i iterates thru the loop.&lt;/p&gt;
&lt;p&gt;What I am doing now is just creating a new wave of the appropriate length and calling its point values as my variables, instead of creating actual variables.  But so far I am forced to tack it onto a table and fill in the values, which seems cluttered (id prefer to have it run in the background, with GUI for input, instead of actually &quot;seeing&quot; the wave. )&lt;/p&gt;
&lt;p&gt;I&#039;ve tried running a set_variable GUI in a loop so that I fill in wave(i) points, but the program just hauls ass thru the loop, showing the GUI only once and I end up with a wave full of zeros and only the last point contains any user input.   I was hoping more for a screen showing &quot;i&quot; set_variable GUIs so that I could set them all one by one.  Putting a button in at the bottom so that the next function is called only after the user has input their values would be the next, and easy, step.  &lt;/p&gt;
&lt;p&gt;Or is there a more elegant solution?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3031#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 10 May 2012 01:26:58 -0700</pubDate>
 <dc:creator>daggaz</dc:creator>
 <guid isPermaLink="false">3031 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>small multithread errors</title>
 <link>http://www.igorexchange.com/node/3028</link>
 <description>&lt;p&gt;To treat my data I have a matlab script written by a colleague which I translated into igor and adapted to my needs. The procedure is quite fit extensive. The result of both programs are in pretty good agreement (without surprise). To enhance the speed I use a multithreaded code. However the result obtained with igor multithreaded code is a little bit more noisy (for the same conditions as far as it is possible to manage them) as it is shown in the attached file while the &quot;normal&quot; gives exactly the same result as the matlab script.&lt;/p&gt;
&lt;p&gt;To be a bit more precise: Each x point is the result of the the difference of two different datasets proceeded by the following function.&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;Threadsafe&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;FUNCTION&lt;/span&gt; fitthematrix_realth&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;srcwv, tmpwv,outwv,row&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;WAVE&lt;/span&gt; srcwv, tmpwv, outwv
&lt;span class=&quot;kw2&quot;&gt;variable&lt;/span&gt; row
&lt;span class=&quot;kw2&quot;&gt;variable&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;i&lt;/span&gt;
		tmpwv = srcwv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;row&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
		&lt;span class=&quot;kw4&quot;&gt;CurveFit&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;N&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;L=&lt;span class=&quot;nu0&quot;&gt;100000&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;NTHR=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;kw3&quot;&gt;poly&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt;,  tmpwv &lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;D
		&lt;span class=&quot;kw2&quot;&gt;wave&lt;/span&gt; fit_dumper, M_Covar, W_coef, W_fitConstants, W_ParamConfidenceInterval, W_sigma
		&lt;span class=&quot;kw4&quot;&gt;wavestats&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Q&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;M=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt; fit_dumper
		outwv&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;row&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt; = &lt;span class=&quot;nu0&quot;&gt;0.0009&lt;/span&gt; &lt;span class=&quot;sy0&quot;&gt;*&lt;/span&gt; V_minRowLoc
		&lt;span class=&quot;kw4&quot;&gt;killwaves&lt;/span&gt;&lt;span class=&quot;sy0&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;Z&lt;/span&gt; fit_dumper, M_Covar, W_coef, W_fitConstants, W_ParamConfidenceInterval, W_sigma
&lt;span class=&quot;kw2&quot;&gt;END&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;In the main function the loop which calls the fit procedure looks like, which is basically copy&amp;amp;pasted from the igor help files:&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; n,actrow,nthreads= &lt;span class=&quot;kw3&quot;&gt;ThreadProcessorCount&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; mt= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupCreate&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;nthreads&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; ttime= &lt;span class=&quot;kw3&quot;&gt;stopMSTimer&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;-&lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;actrow=0;actrow&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;DimSize&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;fieldwv,0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;n=0;n&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;nthreads;n+=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		ThreadStart mt,n, fitthematrix_realth&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;fieldwv, dumper,resultingfield,actrow&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		actrow+=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; actrow &lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span class=&quot;kw3&quot;&gt;DimSize&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;fieldwv,0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
			&lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;endif&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;endfor&lt;/span&gt;
 
	&lt;span class=&quot;kw1&quot;&gt;do&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;variable&lt;/span&gt; tgs= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupWait&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mt,&lt;span class=&quot;nu0&quot;&gt;1000&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; tgs &lt;span class=&quot;sy0&quot;&gt;!&lt;/span&gt;= 0 &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;endfor&lt;/span&gt;
&lt;span class=&quot;kw2&quot;&gt;variable&lt;/span&gt; dummy= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupRelease&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mt&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Variable&lt;/span&gt; mt2= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupCreate&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;nthreads&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;actrow=0;actrow&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;DimSize&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;zfieldwave,0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;n=0;n&lt;span class=&quot;sy0&quot;&gt;&amp;lt;&lt;/span&gt;nthreads;n+=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		ThreadStart mt2,n, fitthematrix_realth&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;zfieldwave, dumper,resultingnofield,actrow&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
		actrow+=&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; actrow &lt;span class=&quot;sy0&quot;&gt;&amp;gt;&lt;/span&gt;= &lt;span class=&quot;kw3&quot;&gt;DimSize&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;zfieldwave,0&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
			&lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;
		&lt;span class=&quot;kw1&quot;&gt;endif&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;endfor&lt;/span&gt;
 
	&lt;span class=&quot;kw1&quot;&gt;do&lt;/span&gt;
		&lt;span class=&quot;kw2&quot;&gt;variable&lt;/span&gt; tgs2= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupWait&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mt2,&lt;span class=&quot;nu0&quot;&gt;1000&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
	&lt;span class=&quot;kw1&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt; tgs &lt;span class=&quot;sy0&quot;&gt;!&lt;/span&gt;= 0 &lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;endfor&lt;/span&gt;					
dummy= &lt;span class=&quot;kw3&quot;&gt;ThreadGroupRelease&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;mt2&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Where is my error?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3028#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <enclosure url="http://www.igorexchange.com/image/view/3027/preview" length="114717" type="image/png" />
 <pubDate>Tue, 08 May 2012 00:27:54 -0700</pubDate>
 <dc:creator>ubi</dc:creator>
 <guid isPermaLink="false">3028 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>plotting data using bars </title>
 <link>http://www.igorexchange.com/node/3026</link>
 <description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I&#039;m sure it&#039;s an easy question but right now I&#039;m stuck with the following problem and can&#039;t find out how to solve it:&lt;/p&gt;
&lt;p&gt;I have xy-data-sets (a few hundred data points), whose x-values are not evenly distributed, e.g.:&lt;br /&gt;
1 y1&lt;br /&gt;
3 y2&lt;br /&gt;
8 y3&lt;/p&gt;
&lt;p&gt;How can I plot this data set so that it finally looks like the blue bars in &lt;a href=&quot;http://www.wavemetrics.com/products/igorpro/gallery/userpix/friedman.gif&quot; title=&quot;http://www.wavemetrics.com/products/igorpro/gallery/userpix/friedman.gif&quot; rel=&quot;nofollow&quot;&gt;http://www.wavemetrics.com/products/igorpro/gallery/userpix/friedman.gif&lt;/a&gt; ?&lt;/p&gt;
&lt;p&gt;If I use an xy-plot with &lt;span class=&quot;geshifilter&quot;&gt;&lt;code class=&quot;geshifilter-c&quot;&gt;Modify Graph mode &lt;span class=&quot;sy0&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;5&lt;/span&gt; &lt;/code&gt;&lt;/span&gt; I end up with bars, but they are connected to each other which is not what I want. I have not found out yet how to change it (if possible). Also, it&#039;s not really a category plot.&lt;/p&gt;
&lt;p&gt;I already tried to search the documentation, but end up with a lot of information on error bars and category plots. Any help is appreciated!&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/3026#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Mon, 07 May 2012 09:07:28 -0700</pubDate>
 <dc:creator>CaJo</dc:creator>
 <guid isPermaLink="false">3026 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Is anyone here using the &quot;NIST SANS data analysis program&quot; written in Igor?</title>
 <link>http://www.igorexchange.com/node/2800</link>
 <description>&lt;p&gt;Dear All,&lt;/p&gt;
&lt;p&gt;I&#039;m currently using the above mentioned program for analysing some data I acquired from small-angle scattering experiments. &lt;/p&gt;
&lt;p&gt;It&#039;s a free program downloadable from NIST website and fully compatible with Igor.&lt;/p&gt;
&lt;p&gt;So, I&#039;d like to ask if here is any small-angle scattering experts who is familiar with this program.&lt;/p&gt;
&lt;p&gt;Best Wishes,&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/2800#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Thu, 09 Feb 2012 17:49:32 -0800</pubDate>
 <dc:creator>Igor_user</dc:creator>
 <guid isPermaLink="false">2800 at http://www.igorexchange.com</guid>
</item>
<item>
 <title>Using Hooks in Independent Modules</title>
 <link>http://www.igorexchange.com/node/571</link>
 <description>&lt;p&gt;I have a question about using a Menu Hook Function in an Independent Modules. The following options do not work for me:&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw5&quot;&gt;#pragma&lt;/span&gt; IndependentModule=MyModule
 
&lt;span class=&quot;kw4&quot;&gt;SetIgorHook&lt;/span&gt; IgorMenuHook=TestTheMenu    &lt;span class=&quot;co1&quot;&gt;// does not work with this line&lt;/span&gt;
&lt;span class=&quot;kw4&quot;&gt;SetIgorHook&lt;/span&gt; IgorMenuHook=MyModule#TestTheMenu    &lt;span class=&quot;co1&quot;&gt;// does not work with this line&lt;/span&gt;
&lt;span class=&quot;kw4&quot;&gt;SetIgorHook&lt;/span&gt; IgorMenuHook=MyModule#MyModule#TestTheMenu    &lt;span class=&quot;co1&quot;&gt;// does not work with this line&lt;/span&gt;
 
&lt;span class=&quot;kw2&quot;&gt;Static&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;Function&lt;/span&gt; TestTheMenu&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;...&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
   ...
 
&lt;span class=&quot;kw2&quot;&gt;end&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Neither does the following direct setup:&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;geshifilter&quot;&gt;&lt;pre class=&quot;igor geshifilter-igor&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw5&quot;&gt;#pragma&lt;/span&gt; IndependentModule=MyModule
 
&lt;span class=&quot;kw2&quot;&gt;Function&lt;/span&gt; IgorMenuHook&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;...&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
   ...
 
&lt;span class=&quot;kw2&quot;&gt;end&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Is this a limitation of Independent Modules, a my misunderstanding of the text on page IV-41 of the manual ...&lt;/p&gt;
&lt;p&gt;&lt;div class=&quot;quote-msg&quot;&gt;&lt;div class=&quot;quote-author&quot;&gt;Quote:&lt;/div&gt;&lt;br /&gt;
However, if need be, you can call static functions in the independent module from outside the group using a triple name syntax:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&lt;br /&gt;
imName#modName#functionName()&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;... or a limitation of Independent Modules AND IgorMenuHook functions?&lt;/p&gt;
&lt;p&gt;BTW, I am still generally confused about the first two names in the triple name sequence imName#modName#functionName. What is the modName of an Independent Module?&lt;/p&gt;
</description>
 <comments>http://www.igorexchange.com/node/571#comments</comments>
 <category domain="http://www.igorexchange.com/taxonomy/term/5">General</category>
 <pubDate>Tue, 01 Apr 2008 14:38:46 -0700</pubDate>
 <dc:creator>jjweimer</dc:creator>
 <guid isPermaLink="false">571 at http://www.igorexchange.com</guid>
</item>
</channel>
</rss>

