<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;Ck8FSX05fCp7ImA9WhBbEk0.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741</id><updated>2013-05-10T11:46:58.324-04:00</updated><category term="mobile" /><category term="mtab" /><category term="armadillo" /><category term="technology" /><category term="postgresql" /><category term="springboard" /><category term="bittorent" /><category term="latex" /><category term="numerical_physics" /><category term="cups" /><category term="sleep" /><category term="iphone" /><category term="nonlinear dynamics" /><category term="printer" /><category term="mechanics" /><category term="qt4" /><category term="orientation" /><category term="physics" /><category term="cydia" /><category term="c++" /><category term="google calendar" /><category term="stale lock file" /><category term="science" /><category term="database" /><category term="fftw" /><category term="linux" /><category term="IBM" /><category term="colour sync" /><category term="tech" /><category term="birthday" /><category term="hamilton" /><category term="still_point" /><category term="fortran" /><category term="programming" /><category term="sourceforge" /><category term="transmission" /><category term="donation" /><category term="philosophy" /><category term="bash" /><category term="samsung" /><category term="gui" /><category term="beamer" /><category term="dynamics" /><category term="meta" /><category term="rotation" /><category term="wikipedia" /><category term="blogger" /><category term="push notifications" /><category term="qed" /><category term="drivers" /><category term="hamiltonian mechanics" /><category term="history" /><category term="command-line" /><category term="mathematics" /><category term="ipod touch" /><category term="hp" /><category term="jailbreak" /><category term="svn" /><title>Study of Nature</title><subtitle type="html">A personal blog rooted in my interest for physics, mathematics, technology and literature.  Might contain content inappropriate for non-initiated.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.joey-dumont.ca/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>26</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/joey-dumont/aDpH" /><feedburner:info uri="joey-dumont/adph" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DE4FR3s9fip7ImA9WhBVFUs.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-121644364808692860</id><published>2013-04-21T13:55:00.001-04:00</published><updated>2013-04-21T13:55:16.566-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-21T13:55:16.566-04:00</app:edited><title>Dual basis and its applications</title><content type="html">&lt;div dir="ltr" style="text-align:  justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;In the physical sciences, the scientist mostly tries to put the problem in a form that is easily solvable. One such form is the eigenvector expansion where one solves a simpler problem and assumes that the more difficult problem can be decomposed in a sum of the simpler solutions. 
&lt;/div&gt;

&lt;div dir="ltr", style="text-align: justify;" trbidy="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;This kind of problem generally involves solving the eigenvalue problem of a particular matrix. Assuming that you know how to do that, this is all fine and well. However, it is also common to use orthogonality relations to simplify the solution. For a general matrix $A$, the resulting eigenvectors need not be orthogonal. That's a problem. Let's look for a solution. 
&lt;/div&gt;

&lt;div dir="ltr", style="text-align: justify;" trbidy="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Adopting the braket notation and denoting an eigenvector by $|e_i\rangle$, we seek new vectors such that 
$$ \langle f^i|e_j\rangle = \delta^i_j.$$
To see how we can compute those vectors, consider the original
eigenvalue problem
 $$ \label{eq:eigenvalue}A|e_i\rangle = \lambda_i|e_i\rangle .$$
We will use the fact that both sets of eigenvectors are complete
so that there exists a closure relation
 $$ \sum_i |e_i\rangle\langle f^i| = 1.$$
Now, pre-multipling \eqref{eq:eigenvalue} by $\langle f^j|$ and post-multiplying by
$\langle f^i|$ and summing over the index $i$, we get
 $$ \sum_i \langle f^j|A|e_i\rangle\langle f^i| = \sum_i \lambda_i \langle f^j|e_i\rangle\langle f^i|.$$
Using our orthogonality relations on the right-hand side of this last equation and the closure
relation on the left-hand side, we get
 $$ \langle f^j| A = \sum_i \lambda_i \langle f^i| \delta^j_i. $$
The Dirac delta makes the sum disappear as usual and we have
 $$ \langle f^j| A = \lambda_j \langle f^j|. $$
In other words, the $\langle f^j|$ are the row eigenvectors of 
$A$ and have the same eigenvalues as the set $|e_i\rangle$!
&lt;/div&gt;

&lt;div dir="ltr", style="text-align: justify;" trbidy="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;So we find that these new "contravariant" vectors are actually the &lt;i&gt;left eigenvectors&lt;/i&gt; of the matrix $A$. Moreover, the decomposition of any vector in the original set of covariant vectors is given by the dot product with the vectors in the dual basis. Say we have a vector $|v\rangle$, its decomposition is given by
 $$ |v\rangle = \sum_i \langle f^i|v\rangle|e_i\rangle .$$
&lt;/div&gt;

&lt;div dir="ltr", style="text-align: justify;" trbidy="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;This eigendecomposition is incredibly useful in solving differential equations, smoothing numerically unstable solutions... 
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/mLF6rb602CI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/121644364808692860/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2013/04/dual-basis-and-its-applications.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/121644364808692860?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/121644364808692860?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/mLF6rb602CI/dual-basis-and-its-applications.html" title="Dual basis and its applications" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2013/04/dual-basis-and-its-applications.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIMRXo_cSp7ImA9WhBWFUQ.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-159941492213652542</id><published>2013-03-10T23:31:00.000-04:00</published><updated>2013-04-10T08:23:04.449-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-10T08:23:04.449-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="c++" /><category scheme="http://www.blogger.com/atom/ns#" term="armadillo" /><category scheme="http://www.blogger.com/atom/ns#" term="fftw" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><title>Interfacing Armadillo and FFTW</title><content type="html">&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;FFTW, or the &lt;i&gt;&lt;a href="http://fftw.org/"&gt;Fastest Fourier Transform in the West&lt;/a&gt;&lt;/i&gt;, is an awesome C library used to, well, perform FFTs. &lt;a href="http://arma.sourceforce.net/"&gt;Armadillo&lt;/a&gt;, on the other hand, is an awesome C++ library that implements linear algebra operations. Both are renowned for their amazing speed and, especially the latter, ease of use. 
&lt;/div&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Now suppose you want to use Armadillo in concert with FFTW. By default, FFTW assumes that you are using &lt;span style="font-family: Courier New, Courier, monospace;"&gt;fftw_complex*&lt;/span&gt; arrays which memory are allocated using &lt;span style="font-family: Courier New, Courier, monospace;"&gt;fftw_malloc&lt;/span&gt;. Now, assuming that you want to transform elements of an Armadillo vector or matrix, copying the data from the matrix to a newly allocated array may not be desirable (or it might be, depending on the performance hit incurred by not using &lt;span style="font-family: Courier New, Courier, monospace;"&gt;fftw_malloc&lt;/span&gt;). Then, your C++ code should be something like
&lt;script src="https://gist.github.com/valandil/cc98f474360f027240f8.js"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;I'm by no means an expert, but this snippet works beautifully in my own code.
&lt;/div&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Please feel free to point out any factual errors. 
&lt;/div&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&lt;b&gt;Update:&lt;/b&gt; Note that the operations in the Gist do not commute, i.e. the order in which they
are done is important. If you put data in the &lt;span style="font-family: Courier New, Courier, monospace;"&gt;samples&lt;/span&gt;
matrix before creating the plan, your columns will be overwritten. Pay attention!
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/BSwcyFoC4e8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/159941492213652542/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2013/03/interfacing-armadillo-and-fftw.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/159941492213652542?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/159941492213652542?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/BSwcyFoC4e8/interfacing-armadillo-and-fftw.html" title="Interfacing Armadillo and FFTW" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2013/03/interfacing-armadillo-and-fftw.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4HRnc4eCp7ImA9WhNaEE0.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-7097876308229974454</id><published>2013-01-24T01:06:00.000-05:00</published><updated>2013-01-24T01:12:17.930-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-24T01:12:17.930-05:00</app:edited><title>Arrow in the Knee: the Genesis</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; So my wife was re-reading the epic fantasy pentalogy &lt;i&gt;The Belgariad &lt;/i&gt;by David Eddings [1]. It's a fantastic coming-of-age, prophecy-fulfilling, magic-filled story. Every character is fully developed and they are all thoroughly likable. 
&lt;br /&gt;
&lt;br /&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; But now to the important part. In the &lt;i&gt;Queen of Sorcery&lt;/i&gt; book [2,p.222], originally published in 1982, it is revealed that Count Reldegen, an Asturian, is limping. This sparks the following conversation:
&lt;br /&gt;
&lt;blockquote&gt;
"What happened to your leg?" Wolf asked him. &lt;br /&gt;
"An arrow in the knee." The count shrugged.&lt;/blockquote&gt;
Yes, that's right, an &lt;i&gt;arrow in the knee&lt;/i&gt;!  
&lt;/div&gt;
&lt;br /&gt;
&lt;div dir="ltr" style="text-align: justify;" trbidi="on"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Now go read &lt;i&gt;The Belgariad&lt;/i&gt; so you know why it matters that Reldegen is an Asturian. 
&lt;/div&gt;
&lt;br /&gt;
&lt;div id="#ft1"&gt;
[1] Amateurish introductory line, I know.&lt;/div&gt;
&lt;div id="#ft2"&gt;
[2] D. Eddings. &lt;i&gt;Queen of Sorcery&lt;/i&gt; in &lt;i&gt;The Belgariad&lt;/i&gt;. 2002. New York: Ballantine.&lt;/div&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/EbhRQwbzLLU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/7097876308229974454/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2013/01/arrow-in-knee-genesis.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7097876308229974454?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7097876308229974454?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/EbhRQwbzLLU/arrow-in-knee-genesis.html" title="Arrow in the Knee: the Genesis" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2013/01/arrow-in-knee-genesis.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4AQ3Y_cCp7ImA9WhJUEEo.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-1017901061228166616</id><published>2012-09-08T00:19:00.000-04:00</published><updated>2012-09-08T00:19:02.848-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-08T00:19:02.848-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="philosophy" /><category scheme="http://www.blogger.com/atom/ns#" term="still_point" /><title>(Literary) Ramblings about the Universe</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;While sipping away at my alcoholic drink, I had, as men usually have, philosophical matters spring to my mind. Wrought body and soul in the shadow of the night, my first instinct was to share my thoughts with the world.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;In &lt;a href="http://www.amazon.ca/gp/product/0553208845/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&amp;amp;camp=15121&amp;amp;creative=330641&amp;amp;creativeASIN=0553208845&amp;amp;linkCode=as2&amp;amp;tag=blogjoeydumon-20" target="_blank"&gt;Siddhartha&lt;/a&gt;, by Hermann Hesse, a young prodigy of his tribe leaves his home and undertakes a long journey to gain spiritual enlightenment. In the process of knowing himself and the world, he loses himself. He goes against all the teachings of the elders of his tribe and everything he has always known. However, in the end, while not returning to his home, he returns in a state resembling his old state, but with hard-gained knowledge and wisdom.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;This very idea of movie through space and time but coming back to a similar place, the notion of the cycles in life, of the cycles in Nature, is interesting to me. For a reason I can't explain, this is appealing to me. The idea that, through human history, through the succession of generations, I get to live forever. "At the still point of the turning world", through the center that must hold, where everyone is one and nothing, where the lonely streams become a river, the river of life, I can identify with everything. My "soul is the whole world".&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="text-align: left;"&gt;&amp;nbsp; &amp;nbsp;This is indeed very hard to explain. Even T.S. Eliot had problems expressing this idea:&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;That was a way of putting it - not very satisfactory:&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
A periphrastic study in a worn-out poetical fashion,&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Leaving one still with the intolerable wrestle&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
With words and meanings. The poetry does not matter.&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
although the idea is, verily, quite simple. In a place, where there exists no time and no space, we are one. But not really.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;This still point, being defined by the Universe, must be &lt;i&gt;of&lt;/i&gt;&amp;nbsp;the Universe. Imagine a rolling wheel. Its center does not move, being the center, but it must rotate as to accompany the wheel. We do not see it turning, but it must. We can relate this analogy to the conclusion of Siddhartha. &lt;i&gt;Carpe Diem&lt;/i&gt;. Everything that is the world is beautiful; it must be appreciated and loved and such. Everything has sin and virtue in it.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;But this isn't true. It is true only at the still point. What shall we do? Locally, then, an ethics system must be enforced. This ethical system, built by the people inhabiting the region of space and time by the means of logic and reason, must fulfill the requirements and principles of the people.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="text-align: left;"&gt;&amp;nbsp; &amp;nbsp;Globally, this is my interpretation of this. Although I do not think the world completely deterministic, I believe that the entirety of possibilities is contained in the world. At the still point, then, the singularity of the Big Bang, every possible outcome exists and is as one; the future of the Universe is written as the wavefunction fo the Universe. At that time, the river breaks into a million pieces.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="text-align: left;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="text-align: left;"&gt;&amp;nbsp; &amp;nbsp;What did I just say? I am confused.&amp;nbsp;&lt;/span&gt;&lt;span style="text-align: left;"&gt;&amp;nbsp;The poetry does not matter, but its equivocacy a way to expose without explaining, a way to confuse and inform.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="text-align: left;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="text-align: left;"&gt;&amp;nbsp; &amp;nbsp;This is it for now, but I shall return.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/Lgs1dqc-XgE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/1017901061228166616/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/09/literary-ramblings-about-universe.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1017901061228166616?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1017901061228166616?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/Lgs1dqc-XgE/literary-ramblings-about-universe.html" title="(Literary) Ramblings about the Universe" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2012/09/literary-ramblings-about-universe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUFQng5fip7ImA9WhJUEEo.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-5140646509108411271</id><published>2012-09-08T00:11:00.001-04:00</published><updated>2012-09-08T00:23:33.626-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-09-08T00:23:33.626-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="c++" /><category scheme="http://www.blogger.com/atom/ns#" term="fortran" /><category scheme="http://www.blogger.com/atom/ns#" term="numerical_physics" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="physics" /><title>Bessel functions of complex argument</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Our research group, &lt;a href="http://www.dynamica.phy.ulaval.ca/" target="_blank"&gt;Dynamica&lt;/a&gt;, has openly published a shared object C++ library to compute Bessel functions of complex argument. It is available ready to compile as a tar archive or, for the initiated, as C++ and Fortran source code on &lt;a href="http://code.google.com/p/complex-bessel/" target="_blank"&gt;Google Code&lt;/a&gt;.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;The Fortran code comes from D.E. Amos&amp;nbsp;and his 1986 &lt;a href="http://dl.acm.org/citation.cfm?id=214331" target="_blank"&gt;article&lt;/a&gt;. The article clearly details the limits, accuracy and speed of the subroutines. Being tested and proven against the test of time, we use them without modification. A C++ wrapper is defined in a header.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;More documentation is available on the Google Code repository. To thank you for reading this, here's a pretty picture!&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://complex-bessel.googlecode.com/files/contours.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="285" src="http://complex-bessel.googlecode.com/files/contours.png" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;"Proof" that the algorithms work.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/d5Wn11Vti4c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/5140646509108411271/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/09/bessel-functions-of-complex-argument.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5140646509108411271?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5140646509108411271?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/d5Wn11Vti4c/bessel-functions-of-complex-argument.html" title="Bessel functions of complex argument" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2012/09/bessel-functions-of-complex-argument.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUcGSX08eCp7ImA9WhBWFUQ.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-4429777278763678793</id><published>2012-08-24T13:20:00.000-04:00</published><updated>2013-04-10T08:30:28.370-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-10T08:30:28.370-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="c++" /><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="fortran" /><category scheme="http://www.blogger.com/atom/ns#" term="numerical_physics" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="physics" /><title>Fortran, C++ and qmake</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/ru/7/70/QtCreator.png" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img alt="" border="0" height="196" src="http://upload.wikimedia.org/wikipedia/ru/7/70/QtCreator.png" title="I know, I know, using an IDE on Linux..." width="200" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Qt Creator Logo&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Call me a noob, but I love using Qt Creator even when I'm not programming a GUI. The UI greatly facilitates code writing: the syntax highlighting is very customizable, it shows you the methods of a class when you use the . or &lt;span style="font-family: Courier New, Courier, monospace;"&gt;-&amp;gt;&lt;/span&gt; operators, it makes the build process faster and easier to configure (sometimes), etc.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Now, I didn't want to make this a post about Qt Creator, so here comes the meat. I've been trying to add Fortran code to my numerical library, something I think is pretty common in scientific circles. Of course, that's been &lt;a href="http://www.yolinux.com/TUTORIALS/LinuxTutorialMixingFortranAndC.html" target="_blank"&gt;done&lt;/a&gt; &lt;a href="http://stackoverflow.com/questions/5663083/linking-fortran-and-c-binaries-using-gcc" target="_blank"&gt;before&lt;/a&gt;, but my research has yielded one &lt;a href="http://nanophysics.dk/blog/2009/03/25/getting-started-with-qt-linked-with-fortran/" target="_blank"&gt;link&lt;/a&gt; for Fortran and Qt.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;I'm using &lt;a href="http://dl.acm.org/citation.cfm?id=214331" target="_blank"&gt;D.E. Amos'&lt;/a&gt;&amp;nbsp;Fortran code to compute Bessel and Hankel functions of complex arguments and all (real) orders (we use identities to convert the negative order computations to positive order ones). Complex orders are not supported. Work by &lt;a href="http://www.springerlink.com/content/n2j129r7l0532h72/" target="_blank"&gt;Temme&lt;/a&gt;&amp;nbsp;could be used for this, but maybe a later time.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;I have two Fortran source files that must be incorporated into a C++ numerical library. Using &lt;span style="font-family: Courier New, Courier, monospace;"&gt;qmake&lt;/span&gt;, this is child's play.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;First, add the Fortran source files as sources in your .pro file.&amp;nbsp;&lt;/li&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;span style="font-family: Courier New, Courier, monospace;"&gt;SOURCES += machine.for zbesh.for&lt;/span&gt;
&lt;/blockquote&gt;
&lt;br /&gt;
Those are the names of the Fortran sources files used by Amos.&amp;nbsp;&amp;nbsp;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Second, create a C++ header file that links to the Fortran subroutines inside the source files.&amp;nbsp; &lt;br /&gt;
&lt;script src="https://gist.github.com/3452963.js"&gt;&lt;/script&gt;
&lt;br /&gt;
A couple things about this linkage. Notice that I appended a _ to the Fortran subroutine names. The &lt;span style="font-family: Courier New, Courier, monospace;"&gt;extern&lt;/span&gt; keyword tells the compiler that a separately compiled &lt;i&gt;object&lt;/i&gt; will be used. By defaul&lt;span style="font-family: Courier New, Courier, monospace;"&gt;t, g++ &lt;/span&gt; will append _ to Fortran subroutines when creating an object file. This means that if you change this compiler setting, be sure to remember to change your function declarations in your C++ header file.&lt;br /&gt;
Also, the functions take pointers to variables. In Fortran, all functions take their arguments by reference. It is thus necessary to use pointers when using Fortran subroutines in C++.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;You're done! You can now use your Fortran subroutines in your C++ program! Just don't forget to add the
&lt;blockquote class="tr_bq" style="text-align: left;"&gt;
&lt;span style="font-family: Courier New, Courier, monospace;"&gt;-lgfortran&lt;/span&gt;&lt;/blockquote&gt;
when compiling either the program you are writing or a program that uses a library that uses Fortran subroutines. 
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Wow, that last sentence was terrible.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="text-align: justify;"&gt;&amp;nbsp; &amp;nbsp;Anyway, have fun programming!&lt;/span&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/i0cHY53S_Y8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/4429777278763678793/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/08/fortran-c-and-qmake.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/4429777278763678793?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/4429777278763678793?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/i0cHY53S_Y8/fortran-c-and-qmake.html" title="Fortran, C++ and qmake" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2012/08/fortran-c-and-qmake.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQGQ3wzeCp7ImA9WhJQEEg.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-8570592347299829758</id><published>2012-07-23T09:31:00.000-04:00</published><updated>2012-07-23T09:32:02.280-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-07-23T09:32:02.280-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="cups" /><category scheme="http://www.blogger.com/atom/ns#" term="printer" /><category scheme="http://www.blogger.com/atom/ns#" term="hp" /><title>Issues with Linux and HP printers</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Since I have access to a new printer, I (of course) had issues with it. As I tried different kinds of connection with CUPS (ipp://, ipps://, http://, socket://) and different drivers (hpijs, hpcups), the page would sometimes render blank lines as black strips of ink or print with some weird margins.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;But, I have found the solution!&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;It turns out that the hplip package comes with a command called hp-setup, which can be used to configure your network printer. The tool setup the printer with the hpijs driver, but with an hp:// connection. The hp:// connection string I could not have guessed. It seems to be a combination of the printer model and other things, but it isn't explicited anywhere (that I know of).&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Anyhow, now everything works fine. I hope this short post helps you.&amp;nbsp;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/hsYBP7JORTA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/8570592347299829758/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/07/issues-with-linux-and-hp-printers.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/8570592347299829758?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/8570592347299829758?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/hsYBP7JORTA/issues-with-linux-and-hp-printers.html" title="Issues with Linux and HP printers" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Laval University, Pavillon Alexandre-Vachon, 1045 Avenue de la Médecine, Québec, QC G1V 0A6, Canada</georss:featurename><georss:point>46.780072 -71.276507</georss:point><georss:box>46.769198499999995 -71.29624799999999 46.7909455 -71.256766</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2012/07/issues-with-linux-and-hp-printers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMBQn44fip7ImA9WhVUEkU.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-6252911132913981929</id><published>2012-05-17T16:40:00.000-04:00</published><updated>2012-05-17T16:44:13.036-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-05-17T16:44:13.036-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="physics" /><title>Lattice Gauge Theory</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;During the Winter 2012 semester at U. Laval, I took a Particle Physics course. I'm not sure of the exact appelation in English, but it was given as directed reading (&lt;i&gt;lectures dirigées&lt;/i&gt;). I didn't have classes: only the reference book.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;None of that really matters anyway. The course culminated into an exploration of Lattice Gauge Theory by us two undergrad students. The resulting text is more a collection of interesting results or, in other words, an elementary review of the basics of the theory.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;The &lt;a href="http://feynman.phy.ulaval.ca/marleau/pp/12jaugesurreseau/index.html" target="_blank"&gt;PDF document&lt;/a&gt; is available on the website we made for the project. Again, French only.&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/ayTQREp-G3E" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/6252911132913981929/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/05/lattice-gauge-theory.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/6252911132913981929?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/6252911132913981929?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/ayTQREp-G3E/lattice-gauge-theory.html" title="Lattice Gauge Theory" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2012/05/lattice-gauge-theory.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04FQ308eyp7ImA9WhVQEE0.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-570628849503661381</id><published>2012-03-29T03:25:00.000-04:00</published><updated>2012-03-29T03:25:12.373-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-29T03:25:12.373-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="cups" /><category scheme="http://www.blogger.com/atom/ns#" term="samsung" /><category scheme="http://www.blogger.com/atom/ns#" term="drivers" /><title>Printer margins issues with Samsung CLP-310N</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Although this is a rather specific issue concerning the Samsung CLP-310N, I thought it could be a good idea to share the solution to a longstanding problem I was having.&amp;nbsp;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;For some reason, when I upgraded CUPS some time ago (I don't recall specifically when this began), printing PDFs and other documents from my Arch Linux box was difficult. The documents were not properly centered on the page (the top margin was way too low). So, I googled for something interesting. I came up with &lt;a href="https://bugs.launchpad.net/ubuntu/+source/hplip/+bug/872160/comments/8" target="_blank"&gt;someone saying&lt;/a&gt; that the SPL-C driver seemed to be the cause and that switching to &lt;a href="http://foo2qpdl.rkkda.com/" target="_blank"&gt;foo2qpdl&lt;/a&gt; solved the problem.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;I immediately tried to change my printer's driver to this one with CUPS (on my machine, I just go to &lt;a href="http://localhost:631/"&gt;http://localhost:631&lt;/a&gt;), but the driver was not in the list, even though the foo2qpdl XML file comes with foomatic-db, which I had installed a while back.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Okay, the quick solution is:&lt;/div&gt;
&lt;blockquote class="tr_bq" style="text-align: justify;"&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;yaourt -S foo2zjs&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
then you will be able to select the Foomatic/foo2qpdl from the drop-down menu in CUPS. This is an &lt;a href="http://aur.archlinux.org/" target="_blank"&gt;AUR&lt;/a&gt; package, which seems to be well maintained.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Anyway, hope this helps. Certainly helped me!&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/Vud-ITmVawM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/570628849503661381/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/03/printer-margins-issues-with-samsung-clp.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/570628849503661381?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/570628849503661381?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/Vud-ITmVawM/printer-margins-issues-with-samsung-clp.html" title="Printer margins issues with Samsung CLP-310N" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Saint-Romuald, Québec</georss:featurename><georss:point>46.7473699 -71.2419759</georss:point><georss:box>46.703848900000004 -71.3209399 46.7908909 -71.1630119</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2012/03/printer-margins-issues-with-samsung-clp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8GRH4_eyp7ImA9WhVTFk4.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-9055506721271282335</id><published>2012-03-01T16:20:00.001-05:00</published><updated>2012-03-01T16:20:25.043-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-01T16:20:25.043-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="blogger" /><category scheme="http://www.blogger.com/atom/ns#" term="latex" /><category scheme="http://www.blogger.com/atom/ns#" term="physics" /><category scheme="http://www.blogger.com/atom/ns#" term="meta" /><title>Equations in Blogger (part 2)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp;A &lt;a href="http://blog.joey-dumont.ca/2010/11/equations-in-blogger.html" target="_blank"&gt;while ago&lt;/a&gt;, I fumbled into a method to typeset equations on any web page. However, the JavaScript needed to do the work suddently disappeared (I didn't research that) and anyhow, the equations stopped displaying properly.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Now I just found out that &lt;a href="http://www.mathjax.org/" target="_blank"&gt;MathJax&lt;/a&gt;&amp;nbsp;is available as CDN service. This makes my life way easier. You have to add a HTML/JavaScript gadget to Blogger and paste some code. The simple procedure is explained in their good &lt;a href="http://www.mathjax.org/docs/2.0/configuration.html" target="_blank"&gt;documentation&lt;/a&gt;.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
So... want a taste of it? Let $\rho(\mathbb{x})$ be the probability density function of $n$ statistically independant variables distributed according to some distribution function. The normalization condition is:&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
\[ \int\cdots\int_{-\infty}^{\infty} \rho(\mathbb{x})d^n\mathbb{x} = 1. \]&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Oh hell, I like this too much! Another one!&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
\[ \mathcal{H} = \frac{1}{2}\frac{p_{\theta}^2}{mL^2}-mgL\cos\theta.\]&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/PCU3w6RrzTc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/9055506721271282335/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/03/equations-in-blogger-part-2.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/9055506721271282335?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/9055506721271282335?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/PCU3w6RrzTc/equations-in-blogger-part-2.html" title="Equations in Blogger (part 2)" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Université Laval, Sainte-Foy</georss:featurename><georss:point>46.7836822 -71.2795007</georss:point><georss:box>46.761937700000004 -71.3189827 46.8054267 -71.2400187</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2012/03/equations-in-blogger-part-2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUAFRXoyeCp7ImA9WhRbEk8.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-5586533657766183760</id><published>2012-02-02T18:01:00.001-05:00</published><updated>2012-02-02T18:01:54.490-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-02T18:01:54.490-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="command-line" /><category scheme="http://www.blogger.com/atom/ns#" term="sourceforge" /><category scheme="http://www.blogger.com/atom/ns#" term="svn" /><title>Corrrupted SVN repo and the solution</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;I'm currently taking a Numerical Physics course at U. Laval. So far, it has been a really enjoyable experience. However, I would like to share some technical know-how I acquired while working on one of the projects.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;We are mostly using MATLAB (I personally use &lt;a href="http://www.gnu.org/software/octave/" target="_blank"&gt;Octave&lt;/a&gt;, which is the open-source counterpart) to do the projects. As of the fourth project, I am working with a partner, which immediately lead to the classic problem: how do we share the code?&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp; Of course, this problem has been solved in thousands of ways. I chose to create an account on SourceForge (I don't have my own server, so it was the easiest way) and start a project where I could dump the all the code in an SVN repository. (By the way, all the code we write, for what it's worth, is Creative Commons.)&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;Everything went well; up till yesterday. For some obscure reason, when I tried to svn up&amp;nbsp;&lt;a href="http://www.noagendashow.com/" target="_blank"&gt;in the morning&lt;/a&gt;, svn returned the error&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Reading one svndiff window read beyond the end of the representation.&lt;/span&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;which I didn't know about. Some Googling informed me that the repository was corrupted. &amp;nbsp;Some more Googling revealed a SourceForge &lt;a href="https://sourceforge.net/apps/trac/sourceforge/wiki/SVN%20adminrepo" target="_blank"&gt;support page&lt;/a&gt; that gave a solution to the problem.&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;Okay, so here's the complete solution. You &lt;a href="https://sourceforge.net/apps/trac/sourceforge/wiki/Shell%20service" target="_blank"&gt;log on&lt;/a&gt; to the Shell SourceForge provide and run the following commands:&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;adminrepo --checkout svn&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;svnadmin dump -r 0:92 /svnroot/&lt;b&gt;projectName&lt;/b&gt;/ &amp;gt; ~/repo.dump&lt;/span&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The adminrepo checks out the SVN repo of your project in a folder that you can modify. You then dump the repo (I used -r 0:92 because I knew the repo was sane at rev 92 and because I had manually merged the diffs of -r 93:95 in my working directory).&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;Now, if you're sure you have a good backup, you can delete the repo. We will then create a new one and load the dump file into this new repo.&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;rm -rf /svnroot/&lt;b&gt;projectName&lt;/b&gt;/&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;svnadmin create /svnroot/&lt;b&gt;projectName&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;adminrepo --save svn&lt;/span&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Now half the fun is done. The repo is back in the main folder (which you can't modify directly) and your DB should be un-corrupted (or whatever).&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp;If you're using the new SourceForge bashboard, you can't stop here. You have to tell the dashboard that you've made some drastic changes to the repo. In the SourceForge web interface, navigate to Admin → Tools. Under the SVN tool, click on Import Repo. Enter the following URL:&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class="tr_bq" style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;https://projectName.svn.sourceforge.net/svnroot/&lt;b&gt;projectName&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;click Import and you're done!&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Please inform me in the comments is something is unclear or just plain wrong. Thanks!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/5yIQ0-tk_F0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/5586533657766183760/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2012/02/currently-taking-numerical-physics.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5586533657766183760?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5586533657766183760?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/5yIQ0-tk_F0/currently-taking-numerical-physics.html" title="Corrrupted SVN repo and the solution" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>2325 Rue de la Terrasse, Laval University, Sainte-Foy, QC G1V, Canada</georss:featurename><georss:point>46.78152 -71.278766</georss:point><georss:box>46.7788015 -71.2837015 46.7842385 -71.2738305</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2012/02/currently-taking-numerical-physics.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUMQno6eyp7ImA9WhVXFE8.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-4131579893891355990</id><published>2011-11-17T09:43:00.001-05:00</published><updated>2012-04-14T13:24:43.413-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-14T13:24:43.413-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="wikipedia" /><category scheme="http://www.blogger.com/atom/ns#" term="donation" /><category scheme="http://www.blogger.com/atom/ns#" term="science" /><title>Contribution to the Book of Knowledge</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://upload.wikimedia.org/wikipedia/commons/b/ba/Book_of_Knowledge_barcoded.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://upload.wikimedia.org/wikipedia/commons/b/ba/Book_of_Knowledge_barcoded.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;The &lt;i&gt;old&lt;/i&gt;&amp;nbsp;version of Wikipedia. Yes, this is a joke.&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;I just made my first contribution to Wikipedia. Considering that it is the first place when I need to check something quickly, or to get references for specific subjects since it launched (yes, I was 11 years old at the time), it was about time I made a contribution!&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Go ahead, do the same! You'll feel better!&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;a href="https://wikimediafoundation.org/wiki/Support_Wikipedia/en"&gt;&lt;img alt="Support Wikipedia" border="0" src="//upload.wikimedia.org/wikipedia/commons/2/2a/Fundraising_2009-micro-contributor-en.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/VbhZNy2DZ18" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/4131579893891355990/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/11/contribution-to-book-of-knowledge.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/4131579893891355990?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/4131579893891355990?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/VbhZNy2DZ18/contribution-to-book-of-knowledge.html" title="Contribution to the Book of Knowledge" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>445-455 1re Av, Saint-Romuald, QC G6W 5M6, Canada</georss:featurename><georss:point>46.74738913515841 -71.24221801757812</georss:point><georss:box>46.70386813515841 -71.32118201757812 46.790910135158406 -71.16325401757813</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/11/contribution-to-book-of-knowledge.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYHSXk-eip7ImA9WhRSFUg.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-2715263193134859950</id><published>2011-08-18T14:28:00.001-04:00</published><updated>2011-11-17T13:05:38.752-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-17T13:05:38.752-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="latex" /><category scheme="http://www.blogger.com/atom/ns#" term="tech" /><title>How-to make LaTeX footnotes stick to the bottom of the page</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;&lt;b&gt;Disclaimer. &lt;/b&gt;The credit goes all to&amp;nbsp;&lt;a href="http://skalkoto.blogspot.com/2008/01/latex-and-footnotes.html"&gt;Nikos Skalkotos&lt;/a&gt;, on whose blog I found this. I couldn't help but repost it here.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp; Sometimes, when you write something in LaTeX which has a number of figures, some pages have a lot of whitespace. If you also have a footnote on this page, the footnote won't be typeset at the bottom of the page, but directly below the text .&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp; I find this utterly annoying. So, after a little Googling, I found the package &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;footmisc&lt;/span&gt;&lt;span style="font-family: inherit;"&gt;. It can be used to typeset the footnotes at the bottom of the page, even if there's a boatload of whitespace before. Just use the following command in the preamble:&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class="tr_bq" style="text-align: justify;"&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;\usepackage[bottom]{footmisc}&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
and tada!&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp; Happy TeXing!&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/VtURIAzqYKY" height="1" width="1"/&gt;</content><link rel="related" href="http://skalkoto.blogspot.com/2008/01/latex-and-footnotes.html" title="How-to make LaTeX footnotes stick to the bottom of the page" /><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/2715263193134859950/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/08/how-to-make-latex-footnotes-stick-to.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/2715263193134859950?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/2715263193134859950?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/VtURIAzqYKY/how-to-make-latex-footnotes-stick-to.html" title="How-to make LaTeX footnotes stick to the bottom of the page" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>445-455 1re Av, Saint-Romuald, QC G6W 5M6, Canada</georss:featurename><georss:point>46.74738913515841 -71.24221801757812</georss:point><georss:box>46.70386813515841 -71.32118201757812 46.790910135158406 -71.16325401757813</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/08/how-to-make-latex-footnotes-stick-to.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQCQn4-fip7ImA9WhVXFE8.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-1054910346142154411</id><published>2011-08-18T01:03:00.001-04:00</published><updated>2012-04-14T13:26:03.056-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-14T13:26:03.056-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="database" /><category scheme="http://www.blogger.com/atom/ns#" term="postgresql" /><title>Return user-defined sets in PostgreSQL</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://upload.wikimedia.org/wikipedia/commons/thumb/2/29/Postgresql_elephant.svg/200px-Postgresql_elephant.svg.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: justify;"&gt;&lt;img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/29/Postgresql_elephant.svg/200px-Postgresql_elephant.svg.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;Returning sets of data with PL/pgSQL functions can be somewhat tricky. The &lt;a href="http://www.postgresql.org/docs/9.0/static/index.html"&gt;documentation&lt;/a&gt; has a line saying how to do it somewhere, but the beginner SQL user (like the author of this post) might be confused at the impressive amount of information given by this document.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; This post is thus intended as an example that firsts creates a small database and a function that manipulates data. Let's do this!&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
First, let's create two tables with some data in them.&lt;/div&gt;
&lt;blockquote&gt;
&lt;div style="text-align: justify;"&gt;
CREATE TABLE foo (&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
"IndexFoo" integer DEFAULT nextval('"sq_IndexFoo"'::regclass) NOT NULL,&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
"FOO_IndexCol1" integer NOT NULL,&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
"FOO_Timestamp" timestamp without time zone DEFAULT now()&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
);&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
And a table that is pointed to by foo:&lt;/div&gt;
&lt;blockquote&gt;
&lt;div style="text-align: justify;"&gt;
CREATE TABLE foo_info (&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
"IndexInfoFoo" integer DEFAULT nextval('"sq_IndexFooInfo"'::regclass) NOT NULL,&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
"INF_Answer" integer DEFAULT 42&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-family: monospace; text-align: -webkit-auto; white-space: pre-wrap;"&gt;);&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
Now say we want to return rows from both tables. Say we want the answer, given in foo_info and the timestamp, given in foo. We just have to create a function that does just&lt;/div&gt;
&lt;blockquote&gt;
&lt;div style="text-align: justify;"&gt;
CREATE OR REPLACE FUNCTION "f_whatIsTheAnswer"(OUT answer integer, OUT "time" timestamp without time zone)&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
RETURNS SETOF record AS $$&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
BEGIN&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
RETURN QUERY SELECT fi."INF_Answer", f."FOO_Timestamp"&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
FROM foo f&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
JOIN "foo_info" fi ON f."FOO_IndexCol1" = fi."IndexInfoFoo";&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
END;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
$$ LANGUAGE plpgsql;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
Notice how the returned columns are defined in the function's arguments. This defines the column set returned by the function. If left out, PostgreSQL will complain that the record type has not been assigned any return type.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Because we use PL/pgSQL, the RETURN QUERY statement is used. Since this is a simple query with no complex data manipulation, it could have been a simple SQL request. The RETURN QUERY would have been unnecessary.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Try it yourself! Here's the database dump.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;a href="https://docs.google.com/leaf?id=0B1k3geX3BgI7ZjVjMGMwZmQtMmExOS00MjRmLTk0MGItNDk2OGMwYmMwMDI5&amp;amp;hl=en_US"&gt;dump.sql&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/eSefa1gmk4Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/1054910346142154411/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/08/return-user-defined-sets-in-postgresql.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1054910346142154411?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1054910346142154411?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/eSefa1gmk4Q/return-user-defined-sets-in-postgresql.html" title="Return user-defined sets in PostgreSQL" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Saint-Romuald, QC, Canada</georss:featurename><georss:point>46.74737 -71.24197600000002</georss:point><georss:box>46.722658499999994 -71.29495650000003 46.7720815 -71.18899550000002</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/08/return-user-defined-sets-in-postgresql.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkICR3w4fyp7ImA9WhVXFE8.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-5661163292157275837</id><published>2011-08-10T13:00:00.002-04:00</published><updated>2012-04-14T13:29:26.237-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-04-14T13:29:26.237-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="command-line" /><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="bash" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><category scheme="http://www.blogger.com/atom/ns#" term="svn" /><title>Removing files from working directory not under version control</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp;I've been using SVN since the beginning of summer and I'm liking it so far. However, I stumbled across a little problem this week.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp; I use SVN to write a LaTeX document which spans multiple files. Being textual, the contents of the .tex files are diff-able and all the features of SVN can be used. However, when I compile the document to have a nice PDF file, a plethora of files are simultaneously created. I don't want to put these files under version control. I hear you say: "Well, do not add them to your repository, then!". Fair enough, here's the result of a &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;svn st&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;:&lt;/span&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-vG7caqqqbHs/TkKHfXQWejI/AAAAAAAAB_Q/KhXuOx1Dw1g/s1600/Screenshot-10.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="362" src="http://3.bp.blogspot.com/-vG7caqqqbHs/TkKHfXQWejI/AAAAAAAAB_Q/KhXuOx1Dw1g/s640/Screenshot-10.png" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Cluttered up svn st. I hate cluttered&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;I hate cluttered things! Now, the easy solution is to remove all files you do want to put under version control, marked by a '?'. You always the manual way, i.e. &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;rm file1 file2 file3 ... fileX &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;but that's cumbersome. Let's use some of our bash knowledge to solve this problem.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;b&gt;WARNING.&amp;nbsp;&lt;/b&gt;The following command will remove all files marked with a '?'. Be careful with it!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;rm `svn st | grep ?`&lt;/span&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Simple enough, huh?&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/dfouqsri0d0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/5661163292157275837/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/08/removing-files-from-working-directory.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5661163292157275837?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5661163292157275837?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/dfouqsri0d0/removing-files-from-working-directory.html" title="Removing files from working directory not under version control" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-vG7caqqqbHs/TkKHfXQWejI/AAAAAAAAB_Q/KhXuOx1Dw1g/s72-c/Screenshot-10.png" height="72" width="72" /><thr:total>0</thr:total><georss:featurename>Saint-Romuald, QC, Canada</georss:featurename><georss:point>46.74737 -71.24197600000002</georss:point><georss:box>46.722658499999994 -71.29495650000003 46.7720815 -71.18899550000002</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/08/removing-files-from-working-directory.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIMQHg7eCp7ImA9WhZbGUQ.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-3365420750626635268</id><published>2011-06-25T05:18:00.001-04:00</published><updated>2011-06-25T05:19:41.600-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-25T05:19:41.600-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="qt4" /><category scheme="http://www.blogger.com/atom/ns#" term="c++" /><category scheme="http://www.blogger.com/atom/ns#" term="gui" /><category scheme="http://www.blogger.com/atom/ns#" term="programming" /><title>Programming is fun!</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-GNQfosXkNFU/TgWmr8Q7waI/AAAAAAAAB2w/DHe7DR13pqA/s1600/Screenshot.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="225" src="http://1.bp.blogspot.com/-GNQfosXkNFU/TgWmr8Q7waI/AAAAAAAAB2w/DHe7DR13pqA/s400/Screenshot.png" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;A look at my coding environment&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&amp;nbsp; &amp;nbsp;I've started programming about a month ago. I pretty much learned by myself by reading a book or two about C++. Oh, and I skimmed some parts of &lt;i&gt;C++ GUI Programming with Qt 4&lt;/i&gt;, by Jasmin Blanchette and Mark Summerfield. So far, I'm liking it.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp;I use the &lt;i&gt;Qt Creator &lt;/i&gt;IDE, which provides graphical tools to edit UI files and pretty much helps at every level of application development.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&amp;nbsp; &amp;nbsp;In short, I'm doing an interface to a PostgreSQL database. I may post screenshots of it when I'm at a more advanced stage. For now, the interface does not do a lot of things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/JTNJEMnVQvo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/3365420750626635268/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/06/programming-is-fun.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3365420750626635268?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3365420750626635268?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/JTNJEMnVQvo/programming-is-fun.html" title="Programming is fun!" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-GNQfosXkNFU/TgWmr8Q7waI/AAAAAAAAB2w/DHe7DR13pqA/s72-c/Screenshot.png" height="72" width="72" /><thr:total>0</thr:total><georss:featurename>Saint-Romuald, QC, Canada</georss:featurename><georss:point>46.74737 -71.24197600000002</georss:point><georss:box>46.722658499999994 -71.29495650000003 46.7720815 -71.18899550000002</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/06/programming-is-fun.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YHQH46cCp7ImA9WhZbFk4.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-3135139587461621551</id><published>2011-06-21T00:33:00.001-04:00</published><updated>2011-06-21T00:38:51.018-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-21T00:38:51.018-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="IBM" /><category scheme="http://www.blogger.com/atom/ns#" term="technology" /><category scheme="http://www.blogger.com/atom/ns#" term="tech" /><category scheme="http://www.blogger.com/atom/ns#" term="birthday" /><title>IBM turns 100!</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://2.gvt0.com/vi/39jtNUGgmd4/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/39jtNUGgmd4&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/39jtNUGgmd4&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;div class="" style="clear: both; text-align: justify;"&gt;&amp;nbsp; &amp;nbsp; IBM has just turned 100. To celebrate this stellar achievement, the company has produced a video that summarizes its century of existence in a rather poignant way.&amp;nbsp;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: justify;"&gt;Enjoy!&lt;/div&gt;&lt;div class="" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="" style="clear: both; text-align: justify;"&gt;[&lt;a href="http://youtu.be/39jtNUGgmd4?hd=1"&gt;Video Link&lt;/a&gt;]&amp;nbsp;&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: arial, sans-serif; line-height: 36px;"&gt;IBM Centennial Film&lt;/span&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/VKDdcIuRlPY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/3135139587461621551/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/06/ibm-has-just-turned-100.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3135139587461621551?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3135139587461621551?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/VKDdcIuRlPY/ibm-has-just-turned-100.html" title="IBM turns 100!" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Saint-Romuald, QC, Canada</georss:featurename><georss:point>46.74737 -71.24197600000002</georss:point><georss:box>46.722658499999994 -71.29495650000003 46.7720815 -71.18899550000002</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/06/ibm-has-just-turned-100.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QHQ3c6fCp7ImA9WhZaGE0.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-6078823698754493678</id><published>2011-06-17T00:17:00.005-04:00</published><updated>2011-07-04T13:42:12.914-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-04T13:42:12.914-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mechanics" /><category scheme="http://www.blogger.com/atom/ns#" term="latex" /><category scheme="http://www.blogger.com/atom/ns#" term="hamiltonian mechanics" /><category scheme="http://www.blogger.com/atom/ns#" term="hamilton" /><category scheme="http://www.blogger.com/atom/ns#" term="beamer" /><category scheme="http://www.blogger.com/atom/ns#" term="dynamics" /><category scheme="http://www.blogger.com/atom/ns#" term="physics" /><category scheme="http://www.blogger.com/atom/ns#" term="nonlinear dynamics" /><title>Integrability and Chaos in Hamiltonian Systems</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp; &amp;nbsp;This last semester, I took a course intitled &lt;i&gt;&lt;a href="https://capsuleweb.ulaval.ca/pls/etprod7/bwckctlg.p_disp_course_detail?cat_term_in=201109&amp;amp;subj_code_in=PHY&amp;amp;crse_numb_in=2502"&gt;Nonlinear Dynamics and Chaos&lt;/a&gt;&amp;nbsp;&lt;/i&gt;(in &amp;nbsp;French). It was quite a novelty, as undergraduates in physics mostly deal with linear problems (they are much easier to solve analytically. Most nonlinear systems do not possess such solutions and they do, the&amp;nbsp;analytic&amp;nbsp;expression is so complex that it offers no qualitative understanding of the subject.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; A dynamicist must make use of a completely different set of tools, mostly numeric, to try to grasp the inner workings of a particular system. Phase space, which shows the relationship between a variable and its &lt;i&gt;n&lt;/i&gt;th order derivatives (where &lt;i&gt;n &lt;/i&gt;is the dynamical order of the system, if I can use this vocabulary), is an important example of these tools.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp; &amp;nbsp;In the special context of Hamiltonian mechanics, where momenta and position are related through what is called a symplectic symmetry, the topology of the phase space trajectories are significantly restricted; they are &lt;i&gt;N&lt;/i&gt;-tori. That is, as long as the system is integrable (has a closed form solution).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp; &amp;nbsp;As soon as a perturbation is added that renders the system non-integrable, then the phase space qualitatively evolves as described by what is called the &lt;i&gt;KAM Theorem&lt;/i&gt;.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;This last theorem was the main topic of a mini research project that was conducted by Raphaël Dubé-Demers and myself&amp;nbsp;throughout&amp;nbsp;the second half of the semester. Following these last few words are the text produced during this research and the Beamer presentation used to introduce the subject to our peers.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Happy reading!&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B1k3geX3BgI7YTQyOWVjM2MtODI1My00MTg5LTkwYjctOTk0NTRiNDI5ODgy&amp;amp;hl=en_US%20https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B1k3geX3BgI7N2Q4MDJhNjYtYWJkZi00YTVlLWFhNTAtOTE4YzJkM2Q2OWFj&amp;amp;hl=en_US"&gt;[Presentation]&amp;nbsp;&lt;/a&gt;&amp;nbsp;(in French)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B1k3geX3BgI7YTQyOWVjM2MtODI1My00MTg5LTkwYjctOTk0NTRiNDI5ODgy&amp;amp;hl=en_US%20https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0B1k3geX3BgI7N2Q4MDJhNjYtYWJkZi00YTVlLWFhNTAtOTE4YzJkM2Q2OWFj&amp;amp;hl=en_US"&gt;[Text]&lt;/a&gt;&amp;nbsp; (in French)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To anyone that will ask nicely, I could translate it in English. Asked very nicely!&lt;br /&gt;
&lt;br /&gt;
UPDATE: I made a flipbook out of it. It looks pretty cool, but that's pretty much it!&lt;br /&gt;
UPDATE 2: Here's the &lt;a href="http://goo.gl/8Bbjr"&gt;link&lt;/a&gt; to the complete thing.&lt;br /&gt;
&lt;br /&gt;
&lt;img border="0" height="0" src="http://c.gigcount.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEzMDg2MjQ5Mjg4ODQmcHQ9MTMwODYyNDkzNDc1NyZwPTE3MzAxMzEmZD*mZz*xJm89N2ZjNWJlODMwZWVlNGM4MGEx/MWE5NTZkZWU5M2JmNjUmb2Y9MA==.gif" style="height: 0px; visibility: hidden; width: 0px;" width="0" /&gt;&lt;object data="http://files.flipsnack.net/app/swf/EmbedCanvas.swf?hash_id=2227a3b62d5e1a5db8acaf020q128788&amp;amp;t=1308624863" height="385" id="2227a3b62d5e1a5db8acaf020q128788" type="application/x-shockwave-flash" width="640"&gt;&lt;param name="movie" value="http://files.flipsnack.net/app/swf/EmbedCanvas.swf?hash_id=2227a3b62d5e1a5db8acaf020q128788&amp;t=1308624863"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="bgcolor" value="#EEEEEE"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/object&gt;&lt;noscript&gt;To view this flipping book you need to have Flash Player 9 or newer installed and JavaScript enabled. Flipsnack is a &amp;amp;amp;amp;amp;amp;amp;amp;lt;a href="http://www.flipsnack.com/" title="Page flip software"&amp;amp;amp;amp;amp;amp;amp;amp;gt;flash video player&amp;amp;amp;amp;amp;amp;amp;amp;lt;/a&amp;amp;amp;amp;amp;amp;amp;amp;gt; that allows you to create stylish flipping books out of your PDF document.&lt;/noscript&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/vi0-nY0B_NA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/6078823698754493678/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2011/06/integrability-and-chaos-in-hamiltonian.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/6078823698754493678?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/6078823698754493678?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/vi0-nY0B_NA/integrability-and-chaos-in-hamiltonian.html" title="Integrability and Chaos in Hamiltonian Systems" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Saint-Romuald, QC, Canada</georss:featurename><georss:point>46.74737 -71.24197600000002</georss:point><georss:box>46.722658499999994 -71.29495650000003 46.7720815 -71.18899550000002</georss:box><feedburner:origLink>http://blog.joey-dumont.ca/2011/06/integrability-and-chaos-in-hamiltonian.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QGQH0-eSp7ImA9Wx9SFEw.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-7445919597713092780</id><published>2010-12-03T17:25:00.002-05:00</published><updated>2010-12-03T17:28:41.351-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-03T17:28:41.351-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="orientation" /><category scheme="http://www.blogger.com/atom/ns#" term="cydia" /><category scheme="http://www.blogger.com/atom/ns#" term="rotation" /><category scheme="http://www.blogger.com/atom/ns#" term="ipod touch" /><category scheme="http://www.blogger.com/atom/ns#" term="springboard" /><category scheme="http://www.blogger.com/atom/ns#" term="jailbreak" /><category scheme="http://www.blogger.com/atom/ns#" term="iphone" /><title>iPod touch Gets a Taste of What It Is to be an iPad</title><content type="html">&amp;nbsp;[iOS 4.x]&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px; white-space: pre-wrap;"&gt;If you’re the owner of a jailbroken iPod touch and wanted your screen to rotate just like the iPad can, SBRotator 4.x does just that. The application, available through Cydia, has launched today. &lt;/span&gt;&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_GqapImIjHNc/TPlnqzty36I/AAAAAAAABvo/ndjzXjnzqI0/s1600/sbrotator.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/_GqapImIjHNc/TPlnqzty36I/AAAAAAAABvo/ndjzXjnzqI0/s320/sbrotator.png" width="212" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;SBRotator in Cydia App Store&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;It rotates your SpringBoard in any orientation you want. The icons are tightly packed together, but the UI remains highly usable.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GqapImIjHNc/TPlnrIwm-BI/AAAAAAAABwA/WKFZzpai5H0/s1600/springboard.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="213" src="http://2.bp.blogspot.com/_GqapImIjHNc/TPlnrIwm-BI/AAAAAAAABwA/WKFZzpai5H0/s320/springboard.png" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Packed together icons&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;It is a rather small tweak, but it's neat to have the option. Just seeing the long list of applications you have running is helpful.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_GqapImIjHNc/TPlrnXwvoCI/AAAAAAAABwM/igNzfj2q7Us/s1600/multitask.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="213" src="http://3.bp.blogspot.com/_GqapImIjHNc/TPlrnXwvoCI/AAAAAAAABwM/igNzfj2q7Us/s320/multitask.PNG" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Multitasking&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;It seems to be available as a commercial package, even though I downloaded it free of charge. For more information, see the package on Cydia or &lt;a href="http://modmyi.com/cydia/net.limneos.sbrotator4"&gt;ModMyi&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/o9Kr-U-xMg8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/7445919597713092780/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/12/ipod-touch-gets-taste-of-what-it-is-to.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7445919597713092780?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7445919597713092780?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/o9Kr-U-xMg8/ipod-touch-gets-taste-of-what-it-is-to.html" title="iPod touch Gets a Taste of What It Is to be an iPad" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_GqapImIjHNc/TPlnqzty36I/AAAAAAAABvo/ndjzXjnzqI0/s72-c/sbrotator.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/12/ipod-touch-gets-taste-of-what-it-is-to.html</feedburner:origLink><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="enclosure" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~5/q61nAHffGsc/net.limneos.sbrotator4" length="0" /><feedburner:origEnclosureLink>http://modmyi.com/cydia/net.limneos.sbrotator4</feedburner:origEnclosureLink></entry><entry gd:etag="W/&quot;DEENQ3syeip7ImA9Wx5bGEg.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-8984336588802679880</id><published>2010-11-04T03:44:00.000-04:00</published><updated>2010-11-04T03:44:52.592-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-04T03:44:52.592-04:00</app:edited><title>Equations in Blogger</title><content type="html">&amp;nbsp;&amp;nbsp; Sweet! I can use equations in Blogger! I mean, LaTeX equations. This &lt;a href="http://a2mstats.blogspot.com/2010/04/writing-equation-in-blogger-using-latex.html"&gt;site&lt;/a&gt; has designed a script that allows LaTeX code to be used in Blogger. So I can present Gauss' Law for gravity in a very clear manner, as I now have the tool to do it. So, there you go:&lt;br /&gt;
\[ \oint_{\partial\mathcal{V}} \mathbf{g}\cdot d\mathbf{A}= -4\pi GM\]&lt;br /&gt;
where $\mathbf{g}$ is the gravitational field, $d\mathbf{A}$ is a differential, oriented piece of area, $G$ is the gravitational constant and $M$ is the mass comprised by the volume described by the surface $\partial V$.&lt;br /&gt;
&lt;br /&gt;
This is going to be so cool!&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/omWOV4hOEfc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/8984336588802679880/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/11/equations-in-blogger.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/8984336588802679880?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/8984336588802679880?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/omWOV4hOEfc/equations-in-blogger.html" title="Equations in Blogger" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/11/equations-in-blogger.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcHSH45eSp7ImA9Wx5bF0k.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-3602829192752840645</id><published>2010-11-02T19:47:00.002-04:00</published><updated>2010-11-02T20:10:39.021-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-02T20:10:39.021-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mtab" /><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="stale lock file" /><category scheme="http://www.blogger.com/atom/ns#" term="sleep" /><category scheme="http://www.blogger.com/atom/ns#" term="transmission" /><category scheme="http://www.blogger.com/atom/ns#" term="bittorent" /><title>Perhaps there is a stale lock file?</title><content type="html">&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i245.photobucket.com/albums/gg47/ubunterror/linux-penguin.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://i245.photobucket.com/albums/gg47/ubunterror/linux-penguin.jpg" width="181" /&gt;&lt;/a&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp;I recently ran into a seemingly severe problem with my computer. Since approximately 2003, I've been using Linux as my primary desktop. I have enjoyed the learning that inevitably came out of it, and have also joined the great community of Linux users.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp; Anyhow, when I booted my computer yesterday, the boot screen said that it couldn't not mount the local file systems, saying something along these lines:&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;Cannot link ... to /etc/mtab&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Perhaps there is a stale lock file?&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
(I don't remember the exact error statement.) So, I did not have access to my /boot, /home, /var and other partitions on my hard drive. No X either. In short, my computer was unusable, as I did not have the necesarry files.&lt;br /&gt;
&amp;nbsp;I immediatly Googled the issue&lt;sup&gt;[*]&lt;/sup&gt; and eventually found a solution:&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;sudo rm /etc/mtab~&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
This seemed to correct the issue without any consequence to the rest of the system. Of course, don't delete the /etc/mtab file proper, but the temporary file marked by the tilde.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;I later found out that this problem originated from Transmission BitTorrent Client. An option in the software allows it to keep your computer to go to sleep, probably creating that /etc/mtab~ file in the process. I did some testing and it seems that it is well behaved about it, i.e. if you let it close properly, it will remove the lock file and allow your computer to sleep or shut down.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Anyhow, in the hope that that helps someone. Oh, by the way, I'm using Arch Linux 64-bit.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="footnote"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;sup&gt;[*]&amp;nbsp;&lt;/sup&gt;On my iPod Touch because I still do not know how to connect to a WPA-protected access point with the command line.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/hVd9k362NJQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/3602829192752840645/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/11/perhaps-there-is-stale-lock-file.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3602829192752840645?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3602829192752840645?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/hVd9k362NJQ/perhaps-there-is-stale-lock-file.html" title="Perhaps there is a stale lock file?" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/11/perhaps-there-is-stale-lock-file.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4DQHo7fip7ImA9Wx5bFks.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-7938990440443938319</id><published>2010-11-01T23:36:00.000-04:00</published><updated>2010-11-01T23:36:11.406-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-01T23:36:11.406-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="colour sync" /><category scheme="http://www.blogger.com/atom/ns#" term="mobile" /><category scheme="http://www.blogger.com/atom/ns#" term="google calendar" /><category scheme="http://www.blogger.com/atom/ns#" term="push notifications" /><category scheme="http://www.blogger.com/atom/ns#" term="iphone" /><title>GCal push notifications on your iPod</title><content type="html">&amp;nbsp;Recently, Google updated its &lt;a href="http://www.google.com/mobile/google-mobile-app/"&gt;Google Mobile app&lt;/a&gt; for the iPhone/iPod touch. Lifehacker almost instantly &lt;a href="http://lifehacker.com/5619730/google-mobile-brings-true-iphone-push-notifications-for-gmail-and-google-calendar"&gt;pushed out the information &lt;/a&gt;to the geeks. However, they failed to mention one small detail.&lt;br /&gt;
&lt;br /&gt;
I tried this when it went out the first time. For some reason, I received notifications in the form of badges for my Gmail e-mail, but nothing for Google Calendar. The answer to that problem is, in fact, very simple.&lt;br /&gt;
&lt;br /&gt;
I switched the calendar feed from Exchange to Gmail itself, which solved the problem. I did that to get &lt;a href="http://lifehacker.com/5670967/how-to-sync-your-calendar-colors-between-google-calendar-and-ios"&gt;colour sync&lt;/a&gt; from Google Calendar and the Calendar app on the iPod Touch &amp;nbsp;and I suddenly began receiving push notifications from GCal!&lt;br /&gt;
&lt;br /&gt;
Yay!&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/x7u5DyTy7IQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/7938990440443938319/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/11/gcal-push-notifications-on-your-ipod.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7938990440443938319?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/7938990440443938319?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/x7u5DyTy7IQ/gcal-push-notifications-on-your-ipod.html" title="GCal push notifications on your iPod" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/11/gcal-push-notifications-on-your-ipod.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQDRnYyfip7ImA9Wx5XGUs.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-1667209900054209046</id><published>2010-09-20T00:30:00.001-04:00</published><updated>2010-09-20T01:59:37.896-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-20T01:59:37.896-04:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mathematics" /><category scheme="http://www.blogger.com/atom/ns#" term="history" /><category scheme="http://www.blogger.com/atom/ns#" term="qed" /><title>A Little History</title><content type="html">&lt;div style="text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;I've been doing a little research on the origins of Q.E.D., the latin expression that is usually used to conclude mathematical proofs. Turns out it was Euclid that started it all about 2300 years ago. The original Greek expression is ὅπερ ἔδει δεῖξαι and means "precisely what was to be proved".&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Basically, Euclid's way of concluding proofs has been preserved throughout the centuries to end up in our modern world approximately unchanged. It has only been translated from Greek to Latin as "quod erat demonstrandum", which means "which that was to be proved".&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;I will include two documents that contain much of the information I have obtained from different websites and books. The history of it is pretty interesting.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://docs.google.com/fileview?id=0B1k3geX3BgI7MmEzNjFmMzAtYzRjYS00NjIwLTg4MjItNDQ1ZGZkMDAwYWMx&amp;amp;hl=en_GB"&gt;QED -- A&amp;nbsp;short document&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://docs.google.com/fileview?id=0B1k3geX3BgI7YWI5MTBmODQtZDAzOS00NmE2LTk4ZTMtNTIxOGM3OGUzMWZm&amp;amp;hl=en_GB"&gt;QED -- A Beamer presentation&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/BB5lb3KBLJk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/1667209900054209046/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/09/little-history.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1667209900054209046?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/1667209900054209046?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/BB5lb3KBLJk/little-history.html" title="A Little History" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/09/little-history.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMDSHc7eyp7ImA9Wx5QEkU.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-3907960273668891699</id><published>2010-08-31T15:54:00.001-04:00</published><updated>2010-08-31T15:54:39.903-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-31T15:54:39.903-04:00</app:edited><title>Finally, a new home</title><content type="html">&amp;nbsp;Good news! The blog has a now a new URL: &lt;a href="http://blog.joey-dumont.ca/"&gt;blog.joey-dumont.ca&lt;/a&gt;. I have consolidated my other projects (such as Groupe de Travail, for physics students) and my writing projects to my main site.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;I will shortly have a portal that summarizes all my projects in one page. It will live on &lt;a href="http://joey-dumont.ca/"&gt;joey-dumont.ca&lt;/a&gt;. That'll give my name a bigger visibility on the Net!&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Until then, see you!&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/zZSuipl-lW4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/3907960273668891699/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/08/finally-new-home.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3907960273668891699?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/3907960273668891699?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/zZSuipl-lW4/finally-new-home.html" title="Finally, a new home" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/08/finally-new-home.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIFRn8yeyp7ImA9WxFQFUw.&quot;"><id>tag:blogger.com,1999:blog-3428773921792525741.post-5504072332947610443</id><published>2010-05-10T14:35:00.001-04:00</published><updated>2010-05-10T14:35:17.193-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-10T14:35:17.193-04:00</app:edited><title>Project</title><content type="html">I am in want of a project. Groupe de travail won&amp;#39;t take all my time&lt;br&gt;this summer although the house could. Maybe compiling notes on&lt;br&gt;mathematics and physics or something like that.&lt;p&gt;I&amp;#39;ll meditate on that and talk to you later.&lt;img src="http://feeds.feedburner.com/~r/joey-dumont/aDpH/~4/PIPqQ_JAAi0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.joey-dumont.ca/feeds/5504072332947610443/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://blog.joey-dumont.ca/2010/05/project.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5504072332947610443?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3428773921792525741/posts/default/5504072332947610443?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/joey-dumont/aDpH/~3/PIPqQ_JAAi0/project.html" title="Project" /><author><name>Joey Dumont</name><uri>https://plus.google.com/105749540743058436128</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-__TxfLB2i6M/AAAAAAAAAAI/AAAAAAAACAA/ijh2joT01M4/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.joey-dumont.ca/2010/05/project.html</feedburner:origLink></entry></feed>
