<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>schestowitz.com &#187; GNU Octave</title>
	<atom:link href="https://schestowitz.com/Weblog/archives/category/free-software/gnu-octave/feed/" rel="self" type="application/rss+xml" />
	<link>https://schestowitz.com/Weblog</link>
	<description>Reflections on Technology</description>
	<lastBuildDate>Tue, 17 Feb 2026 16:47:48 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=3.9.40</generator>
	<item>
		<title>Making Spirals in Octave/MATLAB</title>
		<link>https://schestowitz.com/Weblog/archives/2011/11/19/spirals-in-octave-matlab/</link>
		<comments>https://schestowitz.com/Weblog/archives/2011/11/19/spirals-in-octave-matlab/#comments</comments>
		<pubDate>Sat, 19 Nov 2011 00:23:50 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2683</guid>
		<description><![CDATA[ccasionally, in numerical programming, one may wish to plot or instantiate a grid of a circular (or spiral) nature. Here are some code samples for those trying to achieve it. The following sets some values of interest: lines=10 degrees=180 Now, let us generate some linear, equally-spaced points: t_map = linspace(0,lines*pi*2,lines*degrees*2); What we have here is [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img title="O" src="/IMG/Caps/o.png" alt="O" hspace="0" vspace="4" align="left" border="0"/>ccasionally, in numerical programming, one may wish to plot or instantiate a grid of a circular (or spiral) nature. Here are some code samples for those trying to achieve it. The following sets some values of interest:</p>
<p><code>		  lines=10</code><br />
<code>		  degrees=180</code></p>
<p>Now, let us generate some linear, equally-spaced points:</p>
<p><code>t_map = linspace(0,lines*pi*2,lines*degrees*2);</code></p>
<p>What we have here is the 2 for 360 degrees, which may depend on what one tries to achieve. For the more complex case shown later, this will be essential. Now, let&#8217;s do the sine/cosine magic:</p>
<p><code>		  x_map = t_map.*cos(t_map);</code><br />
<code>		  y_map = t_map.*sin(t_map);</code></p>
<p>This can be plotted with <code>plot(x_map, y_map)</code>, but let&#8217;s do something more interesting by assigning colour to the sample points and then plotting them as dense dots. The following would work:</p>
<pre>
flat=zeros(1000,1000);
  for ll=(size(x_map,2)/2):-1:1
    flat(floor(x_map(ll*2))'+500,floor(y_map(ll*2))'+500)=1
  end
imshow(flat)
</pre>
<p>The values here are rather arbitrary and can be used for demonstrative purposes. The problem itself seems to be commonly recurring, thus the need for a blog post. Different colours can be assigned to sample points, which achieves something like the following:</p>
<p><img src="https://schestowitz.com/Weblog/wp-content/uploads/2011/11/4-nose-comparisons-distance-10.png" alt="Spiral examples" /></p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2011/11/19/spirals-in-octave-matlab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Informal QtOctave Demo</title>
		<link>https://schestowitz.com/Weblog/archives/2011/01/16/informal-qtoctave-demo/</link>
		<comments>https://schestowitz.com/Weblog/archives/2011/01/16/informal-qtoctave-demo/#comments</comments>
		<pubDate>Sun, 16 Jan 2011 23:07:47 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2166</guid>
		<description><![CDATA[his Octave ramble is an experimental video where I try to present some elements of the program before preparing something more professionally put. In this part of a series I go just through some elements of QtOctave and show how it is used in practice. In the future I will prepare something much more polished [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/t.png" border="0" align="left" hspace="0" vspace="4" alt="T" />his Octave ramble is an experimental video where I try to present some elements of the program before preparing something more professionally put. In this part of a series I go just through some elements of QtOctave and show how it is used in practice. In the future I will prepare something much more polished that is planned in advance.</p>
<p><!--#config sizefmt="abbrev"--><br />
<!--#fsize virtual="http://techrights.org/videos/Octave/octave-ramble.ogv" --></p>
<p align="center">
<video src="http://techrights.org/videos/Octave/octave-ramble.ogv" controls type="video/ogg" width="480"><br />
<a href="http://techrights.org/videos/Octave/octave-ramble.ogv" title="View Ogg Theora version"><img src="/wp-content/uploads/2008/05/ogg-128x128.png" alt="Ogg Theora" /></a><br />
</video></p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2011/01/16/informal-qtoctave-demo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://techrights.org/videos/Octave/octave-ramble.ogv" length="13493919" type="video/ogg" />
		</item>
		<item>
		<title>Octave or MATLAB Without GUI</title>
		<link>https://schestowitz.com/Weblog/archives/2011/01/16/m-files-without-gui/</link>
		<comments>https://schestowitz.com/Weblog/archives/2011/01/16/m-files-without-gui/#comments</comments>
		<pubDate>Sun, 16 Jan 2011 10:40:16 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Science]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2150</guid>
		<description><![CDATA[ORKING with bare metal for the purpose of maximal hardware utilisation and performance is not the same as working with typical computer programs. Developing software for research is also different from software development for end users, where the software is treated as a product. Different scenarios require different methodologies and different levels of polish, and [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/matlab-cli.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/matlab-cli.jpg" alt="CLI" title="CLI" width="480" height="384" class="alignnone size-full wp-image-2152" /></a></p>
<p><img src="/IMG/Caps/w.png" border="0" align="left" hspace="0" vspace="4" alt="W" />ORKING with bare metal for the purpose of maximal hardware utilisation and performance is not the same as working with typical computer programs. Developing software for research is also different from software development for end users, where the software is treated as a product. Different scenarios require different methodologies and different  levels of polish, and thus have different specifications and priorities. In research, brute force becomes essential to the success of one group or another.</p>
<p>I often find myself working on servers or clusters (only GNU/Linux), in which case it is useful to <a href="https://schestowitz.com/Weblog/archives/2005/02/25/a-necessary-hog/" title="Resource Hog">manage up to 50 computers</a>, for example, remotely, at the same time. With full GUI sessions it can be a disorienting task, but that too can be achieved and I wrote about it roughly 6 years ago in this blog (back when I was a Ph.D. student).</p>
<p>Working from the command line at a desktop is perfectly acceptable if brains and not candy count, so platforms like Mac OS X are irrelevant. To do coding on the server I currently use <code>vi</code> as the editor in one terminal and the MATLAB session in another. On the desktop I would use QtOctave, as covered before (also in some screencasts). Unfortunate <a href="https://schestowitz.com/Weblog/archives/2011/01/03/testing-matlab-windows-compatibility/" title="Ginput in Octave">issues that had me revisit MATLAB</a> (which in any case would be inevitable as means of ensuring compatibility with colleagues) led me back to the old days of developing over SSH (using KIO slaves and the likes of that). Quick access to the file can be gained using abbreviated wrappers such as:</p>
<pre>
./Main/Programs/Scripts/SSH/42
/opt/matlab/bin/matlab -nodesktop -nosplash -r "addpath(genpath('/home/S00/schestr0/'))"
</pre>
<p>where <code>42</code> is a script numbered after the machine number and the latter command initialises the command line. <code>/home/S00/schestr0/</code> is using NFS and it can be reached from any computer at the department at the same time (multiple machines can write to the filesystem at the same time, too). If the files are edited locally, they can be passed across to the server using a simple command that transfers them in encrypted form.</p>
<pre>
scp /home/roy/Main/IT/Programs/get_dicom_heart/* -r
schestr0@eng041.cs.man.ac.uk:/home/S00/schestr0/get_dicom_heart/
</pre>
<p>Occasional local backups (usually nightly because it is resources-intensive over USB2) are achieved as follows:</p>
<pre>
mkdir /media/disk/Home/`date +%Y-%m-%d`

tar -cf - /home/roy|split -b 1000m - /media/disk/Home/`date +%Y-%m-%d`/Home-`date +%Y-%m-%d`.tar.
</pre>
<p>To decipher this, try:</p>
<pre>
man tar
man split
</pre>
<p>For example in:</p>
<pre>
tar -cf - /media/SEA_DISK/Home/|split -b 1000m - Baine-`date +%Y-%m-%d`
</pre>
<p>the backup is split into chunks of 1 gigabyte and the files are named by the date</p>
<p>To reassemble the above (resorting from backups):</p>
<pre>
cat *|tar -xf - 
</pre>
<p>No command line interface should be intimidating.  Many powerful computer tasks are managed from it because the command line makes streamlining simpler and scripting jobs is a lot easier. My programs are written in a way that enables assigning many parameters like paths and wildcards, which lets the programs run for many hours and automatically produce output like images, videos, and text for inspection later. Research in computer vision or computer graphics requires heavy computation and for compelling experiments, the larger the sample sets, the more convincing the results. Use of computer resources therefore becomes the difference between failure and success and those who fail to master it can easily perish against the competition. Another valuable skill is knowing how to reuse code (legally of course) and this is where free/libre software orientation helps a lot. Publication in Open Access (OA) and availability of one&#8217;s own work &#8212; including code &#8212; can help gain more citations, which is the currency by which many publications are being judged.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2011/01/16/m-files-without-gui/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ginput in Octave</title>
		<link>https://schestowitz.com/Weblog/archives/2011/01/03/testing-matlab-windows-compatibility/</link>
		<comments>https://schestowitz.com/Weblog/archives/2011/01/03/testing-matlab-windows-compatibility/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 06:55:19 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2106</guid>
		<description><![CDATA[ESTERDAY I encountered my first major setback in Octave for Kubuntu. It was a bug, not a missing feature. It involved an outside library again. I tried installing a newer version of gnuplot (installing the latest one by compiling the source code), but this did not resolve the issue. All in all, over an hour [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/y.png" border="0" align="left" hspace="0" vspace="4" alt="Y" />ESTERDAY I encountered my first major setback in Octave for Kubuntu. It was a bug, not a missing feature. It involved an outside library again. I tried installing a newer version of gnuplot (installing the latest one by compiling the source code), but this did not resolve the issue. All in all, over an hour was spent on it, first assuming that I was coding wrongly and later realising that <a href="http://octave.1599824.n4.nabble.com/Ginput-doesn-t-work-in-3-2-3-td1674164.html" title="Ginput doesn't work in 3.2.3">the issue was upstream</a> (there are many more threads like this and they dominate the discussion on the matter). Applying the patch manually would only be a short-term solution as it was already submitted for inclusion in future releases, so for the time being, where this function is needed, I will reluctantly be testing the code under MATLAB (for which I have an academic licence that everyone gets whether they want to or not). It was rather depressing to use MATLAB for a few hours yesterday. Compatibility will be assured again when the little issue (fixable with just a line or a few) is addressed also in the binaries offered by GNU/Linux distributions. Apart from that I&#8217;m having Fedora-Octave-ImageMagick compatibility issues [<a href="https://schestowitz.com/Weblog/archives/2010/11/23/qtoctave-magick-and-fedora/" title="My First Major Disappointment in Fedora (Updated)">1</a>, <a href="https://schestowitz.com/Weblog/archives/2010/11/21/graphicsmagick-octave/" title="GraphicsMagick-1.3.8: GNU Octave in Fedora and Ubuntu">2</a>], which help not at all.</p>
<p>My overall experience with Octave is pleasant and it remains by far the primary choice for image analysis. But for others who insist on using MATLAB I must ensure cross-compatibility, thus the following (under Fedora):</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/matlab-selection.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/matlab-selection.jpg" alt="MATLAB selection" title="MATLAB selection" width="480" height="384" class="alignnone size-full wp-image-2107" /></a></p>
<p>The image shows the interface which now precedes the tracking phase. Points can be placed by the user with text guidance in the console. The interfaces were also improved to separate between rectangular, circular, and manual placements.</p>
<p>Here is an example image without the interface.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/MR000291.bmp"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2011/01/MR000291.bmp" alt="MR image 291" title="MR image 291" class="alignnone size-full wp-image-2109" /></a></p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2011/01/03/testing-matlab-windows-compatibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Porting Code From Octave to MATLAB (or Vice Versa)</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/30/matlab-and-qtoctave-compatibility/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/30/matlab-and-qtoctave-compatibility/#comments</comments>
		<pubDate>Thu, 30 Dec 2010 16:07:44 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Science]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2091</guid>
		<description><![CDATA[QtOctave on Kubuntu with aMATLAB window imported from Fedora over SSH or the sake of cross-application/framework compatibility, one occasionally needs to alter code until it works everywhere, without the need to keep two (or more) separate codebases. This situation is far from ideal, but then again, not everything works like Java. When colleagues use a [&#8230;]]]></description>
				<content:encoded><![CDATA[<p align="center">
<a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/matlab-and-qtoctave.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/matlab-and-qtoctave.png" alt="MATLAB and QtOctave" title="MATLAB and QtOctave" width="477" height="674" class="alignnone size-full wp-image-2092" /></a><br /><em>QtOctave on Kubuntu with a<br />MATLAB window imported from Fedora over SSH</em>
</p>
<p><img src="/IMG/Caps/f.png" border="0" align="left" hspace="0" vspace="4" alt="F" />or the sake of cross-application/framework compatibility, one occasionally needs to alter code until it works everywhere, without the need to keep two (or more) separate codebases. This situation is far from ideal, but then again, not everything works like Java. When colleagues use a different platform and occasionally prefer proprietary software it is only fair to do some extra work catering for it.</p>
<p>In a matter of days or maybe a few weeks I will have some new code ready for release. I had already released this before it was ready for stable usage, partly because I had not set up a proper repository, so each release of code become a manual process. This may change soon.</p>
<p>In the early part of the day I ensured my programs work in both MATLAB and Octave. It was not as trivial as I had expected because there is certain functionality in Octave which MATLAB simply does not support. There are notes that I took to summarise and thus simplify this task in the future. The code now works in the latest MATLAB and also in Octave, with very minor differences between these two. The same set of files can be used for both, interchangeably.</p>
<p>Over the course of my work I have organised the data, documentation, experimental results, and code. All of these can be neatly packaged to provide the tools necessary for others to extend the program and use it to run more experiments. Following a very thorough survey of programs that are already available around the Web, it does not appear as though opportunities to reuse code were missed. At the moment, the program has an interface function with clearly-defined inputs and its output &#8212; in the form of images and video &#8212; is sent to a directory of choice at the end.</p>
<p>What would be nice to attempt next is implementation of other methods that assess similarity between regions, as means of selecting points more accurately. Making the placement of points diffeomorphic so that nothing gets folded or torn between the connecting curves that make up the contours would be essential too, especially for visualisation and 3-D reconstruction for example. At the moment it is possible to take point positions at each slice and each of the 20 iterations contained for that slice and then produce &#8212; using polygons &#8212; a sort of 3-D model of the heart. This, however, would require results to be of higher precision too.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/30/matlab-and-qtoctave-compatibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In-depth Exploration of the QtOctave GUI</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-gui-tutorial/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-gui-tutorial/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 23:40:35 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2088</guid>
		<description><![CDATA[HIS fourth video in tonight&#8217;s series looks more closely at some of the different components of QtOctave.]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/t.png" border="0" align="left" hspace="0" vspace="4" alt="T" />HIS fourth video in tonight&#8217;s series looks more closely at some of the different components of QtOctave.</p>
<p><!--#config sizefmt="abbrev"--><br />
<!--#fsize virtual="http://techrights.org/videos/Octave/qtoctave-gui-tutorial.ogv" --></p>
<p align="center">
<video src="http://techrights.org/videos/Octave/qtoctave-gui-tutorial.ogv" controls type="video/ogg" width="480"><br />
<a href="http://techrights.org/videos/Octave/qtoctave-gui-tutorial.ogv" title="View Ogg Theora version"><img src="/wp-content/uploads/2008/05/ogg-128x128.png" alt="Ogg Theora" /></a><br />
</video></p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-gui-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://techrights.org/videos/Octave/qtoctave-gui-tutorial.ogv" length="6651904" type="video/ogg" />
		</item>
		<item>
		<title>Overview of QtOctave in GNU/Linux</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-video/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-video/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 23:07:37 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2086</guid>
		<description><![CDATA[ITHOUT preparation I&#8217;ve just created another video that can hopefully introduce new users to QtOctave, which is an excellent program. Before we get to the essence of programming with the toolboxes as well as basic syntax, there ought to be a proper introduction to each component in QtOctave, which simplifies Octave by wrapping it with [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/w.png" border="0" align="left" hspace="0" vspace="4" alt="W" />ITHOUT preparation I&#8217;ve just created another video that can hopefully introduce new users to QtOctave, which is an excellent program.</p>
<p><!--#config sizefmt="abbrev"--><br />
<!--#fsize virtual="http://techrights.org/videos/Octave/qtoctave-movie.ogv" --></p>
<p align="center">
<video src="http://techrights.org/videos/Octave/qtoctave-movie.ogv" controls type="video/ogg" width="480"><br />
<a href="http://techrights.org/videos/Octave/qtoctave-movie.ogv" title="View Ogg Theora version"><img src="/wp-content/uploads/2008/05/ogg-128x128.png" alt="Ogg Theora" /></a><br />
</video>
</p>
<p>Before we get to the essence of programming with the toolboxes as well as basic syntax, there ought to be a proper introduction to each component in QtOctave, which simplifies Octave by wrapping it with a GUI.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/28/qtoctave-video/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
<enclosure url="http://techrights.org/videos/Octave/qtoctave-movie.ogv" length="13863368" type="video/ogg" />
		</item>
		<item>
		<title>Tutorial: Installing GNU Octave in GNU/Linux</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/28/octave-install-tutorial/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/28/octave-install-tutorial/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 22:22:28 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2084</guid>
		<description><![CDATA[ITHOUT preparing any notes I&#8217;ve embarked on the task of making this first Octave tutorial, which hopefully helps show how to install it on a Debian- or Red Hat-based system. Please bear in mind that this was done on the spot without rehearsals and future tutorials will hopefully be more organised.]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/w.png" border="0" align="left" hspace="0" vspace="4" alt="W" />ITHOUT preparing any notes I&#8217;ve embarked on the task of making this first Octave tutorial, which hopefully helps show how to install it on a Debian- or Red Hat-based system.</p>
<p><!--#config sizefmt="abbrev"--><br />
<!--#fsize virtual="http://techrights.org/videos/Octave/installing-octave.ogv" --></p>
<p align="center">
<video src="http://techrights.org/videos/Octave/installing-octave.ogv" controls type="video/ogg" width="480"><br />
<a href="http://techrights.org/videos/Octave/installing-octave.ogv" title="View Ogg Theora version"><img src="/wp-content/uploads/2008/05/ogg-128x128.png" alt="Ogg Theora" /></a><br />
</video>
</p>
<p>Please bear in mind that this was done on the spot without rehearsals and future tutorials will hopefully be more organised.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/28/octave-install-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://techrights.org/videos/Octave/installing-octave.ogv" length="9940720" type="video/ogg" />
		</item>
		<item>
		<title>My First GNU Octave Screencast</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/28/screencasting-opener/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/28/screencasting-opener/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 20:57:49 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Videos]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2079</guid>
		<description><![CDATA[ACK in October I planned to create some videos that explain to people how to use Free (as in libre) software in scientific computing and also how to program with the corresponding syntax. The following unscripted video is an opening demo of what I hope will improve as I gain experience with screencasting. It&#8217;s down [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/b.png" border="0" align="left" hspace="0" vspace="4" alt="B" />ACK in October I planned to create some videos that explain to people how to use Free (as in libre) software in scientific computing and also how to program with the corresponding syntax. The following unscripted video is an opening demo of what I hope will improve as I gain experience with screencasting. It&#8217;s down to figuring out the audio, the window size, and all sorts of intuition-related skills which will be acquired over time.</p>
<p><!--#config sizefmt="abbrev"--><br />
<!--#fsize virtual="http://techrights.org/videos/Octave/first-screencast.ogv" --></p>
<p align="center">
<video src="http://techrights.org/videos/Octave/first-screencast.ogv" controls type="video/ogg" width="480"><br />
<a href="http://techrights.org/videos/Octave/first-screencast.ogv" title="View Ogg Theora version"><img src="/wp-content/uploads/2008/05/ogg-128x128.png" alt="Ogg Theora" /></a><br />
</video>
</p>
<p>In later parts I shall introduce readers to <a href="https://schestowitz.com/Weblog/archives/2010/12/25/qtoctave-screenshots/" title="Visual Tour of QtOctave">QtOctave</a>, as well. I currently experiment with all sorts of video capturing/editing programs and I also upload old videos like <a href="http://www.youtube.com/watch?v=npiYESEmBHQ">this one</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/28/screencasting-opener/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://techrights.org/videos/Octave/first-screencast.ogv" length="9959130" type="video/ogg" />
		</item>
		<item>
		<title>Visual Tour of QtOctave</title>
		<link>https://schestowitz.com/Weblog/archives/2010/12/25/qtoctave-screenshots/</link>
		<comments>https://schestowitz.com/Weblog/archives/2010/12/25/qtoctave-screenshots/#comments</comments>
		<pubDate>Sat, 25 Dec 2010 16:46:32 +0000</pubDate>
		<dc:creator><![CDATA[Roy Schestowitz]]></dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU Octave]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://schestowitz.com/Weblog/?p=2046</guid>
		<description><![CDATA[eople who say that nothing can replace Photoshop and nothing can replace Microsoft Office simply forget that the functionality they must be implicily referring to is hardly used by anyone among the entire userbase. As pointed out in the previous post, two months with QtOctave and other free/libre software taught me that there is no [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><img src="/IMG/Caps/p.png" border="0" align="left" hspace="0" vspace="4" alt="P" />eople who say that nothing can replace Photoshop and nothing can replace Microsoft Office simply forget that the functionality they must be implicily referring to is hardly used by anyone among the entire userbase. As pointed out in the <a href="https://schestowitz.com/Weblog/archives/2010/12/25/free-matlab-replacements/">previous post</a>, two months with QtOctave and other free/libre software taught me that there is no reason to deny that ~90% of MATLAB&#8217;s users can abandon it and use free/libre software instead, maybe more happily in fact (stability, program weight, and cross-platform with access to the source code count, it&#8217;s not just a matter of cost). I have used some of the most advanced functionality in MATLAB, so I do know what I am talking about here.</p>
<p>Today I present free/libre software called QtOctave, which is a graphical front end to Octave and it uses Qt, as the name suggests. Qt is cross platform, so as expected <a href="https://schestowitz.com/Weblog/archives/2010/11/30/gnu-octave-installation/">it runs on Windows too</a>. Without further ado, let&#8217;s take an overview of what QtOctave looks like. I typically put QtOctave on my eighth workspace in KDE, which helps me remember where to find it. Here is my workspace 8 (screenshot, click to magnify).</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/qtoctave-fullscreen.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/qtoctave.jpg" alt="QtOctave" title="QtOctave" width="480" height="192" class="alignnone size-full wp-image-2047" /></a></p>
<p>This picture may be daunting, but QtOctave does a good job hiding  lot of the functionality under menus, which reduces clutter. QtOctave uses Octave (CLI) as its engine, but it provides a friendlier face to it. Let&#8217;s break down this picture and explain what each component does, in turn.</p>
<h3>Menu</h3>
<p>The main menu contains many of the basic functions one ought to expect. By &#8220;functions&#8221; what I mean is either functionality like opening files or mathematical functions that are commonly used. Many options there control the appearance of the GUI, whose core component of the command line containing the core, Octave. QtOctave wraps it up nicely and provides tools to work with/around it.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/menu.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/menu.png" alt="Menu in QtOctave" title="Menu in QtOctave" width="512" height="134" class="alignnone size-full wp-image-2058" /></a></p>
<h3>Variables</h3>
<p>Octave exposes names and corresponding values of variables it holds, but only upon demand. How about having a GUI component to keep track of these and display this information all the time. You want it? You got it:</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/vars.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/vars.png" alt="Variables" title="Variables" width="282" height="271" class="alignnone size-full wp-image-2057" /></a></p>
<h3>Commands and Dynamic Help</h3>
<p>The command pane is a companion tool which helps keep track of recently-used commands and makes these conveniently available. In my case, I added the &#8220;Dynamic Help&#8221; component, to help show what commands are available as soon as I start typing. The contents in the example below show what appears in the window as soon as I began typing &#8220;plot&#8221;. The namespace of commands can be highly populated if many modules are used (in session&#8217;s path), so this is a good way to keep track without looking elsewhere. Bash has a similar functionality which it makes available via the &#8220;Tab&#8221; key.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/commands.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/commands.png" alt="Commands and Dynamic Help" title="Commands and Dynamic Help" width="278" height="331" class="alignnone size-full wp-image-2056" /></a></p>
<h3>Directories</h3>
<p>Directories and files are sometimes easier to approach and navigate though when they are quickly accessible through the main GUI. This has use in all sorts of circumstances as drag-and-drop functionality is broadly supported.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/directories.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/directories.png" alt="Directories" title="Directories" width="276" height="351" class="alignnone size-full wp-image-2055" /></a></p>
<h3>Terminal</h3>
<p>In the main body of the program there is the terminal section (or other components, if one chooses to make them available there). Show below is an example of basic interaction with Octave.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/terminal.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/terminal.png" alt="Terminal" title="Terminal" width="401" height="466" class="alignnone size-full wp-image-2054" /></a></p>
<h3>CLI</h3>
<p>The command-line interface is an integral part of the above and it supports up/down arrow key for use of commands history.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/cli.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/cli.png" alt="CLI" title="CLI" width="562" height="54" class="alignnone size-full wp-image-2053" /></a></p>
<h3>Editor Menu</h3>
<p>This editor can be made part of the main windows, but it does not have to be. I personally choose to make it an external window on a second monitor where it offers a lot of viewing space. The menu has all one ought to expect to find in a standard text editor, but it also contains program-specific buttons like execution and debugging.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/editor-menu.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/editor-menu.png" alt="Editor Menu" title="Editor Menu" width="496" height="132" class="alignnone size-full wp-image-2052" /></a></p>
<h3>Code</h3>
<p>Here is a simple code example. The fonts that I use do not look good because I favour monospace, which helps indentation and other tasks where each character is treated as equal.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/code.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/code.png" alt="Code" title="Code" width="456" height="157" class="alignnone size-full wp-image-2051" /></a></p>
<h3>Breakpoint</h3>
<p>Here is another example of code (further down from the top). This helps show how breakpoints are represented in the editor. Together with the variables panel this provides an excellent environment for debugging, so the editor is definitely not detached from the core components; It&#8217;s custom-made for it.</p>
<p><a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/breakpoint.png"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/12/breakpoint.png" alt="Breakpoint" title="Breakpoint" width="467" height="214" class="alignnone size-full wp-image-2050" /></a></p>
<h3>More Components</h3>
<p>There is a lot more under the menus, e.g. package management (see the image below). But that&#8217;s a subject for another day.</p>
<p align="center">
<a href="https://schestowitz.com/Weblog/wp-content/uploads/2010/11/octave-packages-small.jpg"><img src="https://schestowitz.com/Weblog/wp-content/uploads/2010/11/octave-packages-small.jpg" alt="Octave packages" title="Octave packages" class="alignnone size-full wp-image-1786" height="384" width="480"/></a>
</p>
<p>If you like what you see in QtOctave, then consider giving <a href="http://www.gnu.org/software/octave/">Octave</a> a look. Both Octave and QtOctave are in the *Ubuntu and Fedora repositories, so they only take a moment to install.</p>
]]></content:encoded>
			<wfw:commentRss>https://schestowitz.com/Weblog/archives/2010/12/25/qtoctave-screenshots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
