Category: English

Bibtex, some tips

I’m writing a report and I had to cite an article from a book. It’s one of this book which every article can also be used as a standalone paper. The problem is that if you use an article record, you will miss the book and if you use the book record, you will miss the article.

How to solve it? Google it! (somebody has already solved it and post it somewhere)

And it is. The solution is to use @incollection:

@InCollection{Doe05,
author = {John Doe},
title = {Dynamic Ambient Paradigms},
booktitle = {Paradigm Gems 2},
pages = {223--233},
publisher = {Addison Wesley},
year = 2005,
editor = {Averell Doe}
}

More BiBTeX tips (where I found this solution) on this page.

LaTeX and getting the figure in the right place

If you use LaTeX and sometimes want to override the TeX macro to get your figure right there you can do it.

You can use the exclamation point !


\begin{figure}[!ht] \begin{center} \includegraphics[scale=0.50]{image.png} \end{center} \end{figure}

However the results is not really nice as when Tex take care to do the layout. So the win-win solution would be to have Tex taking care of the layout, but force it to put all the figure that belong to a section within that section.

Well that’s pretty easy and the command

\clearpage{}

Just does the trick.

If instead you refer to a figure but instead of the number of the figure you can read the number of the section, this is because you have misplaced the caption with the label.

The label has to go after the caption, otherwise it will refer to the section not to the figure.

Right way:

\begin{figure}[htb]
\begin{center}
\includegraphics[scale=0.50]{image.png}
\caption{A wonderful image!}
\label{fig: image}
\end{center}
\end{figure}

Note the relax [htb]. LaTeX will take care of the position for you.

Like a fish in a barrel

An amazing interesting post about crisis and society collapse from Ugo Bardi on the oildrum.

According to the author the complexity of a society is both a cost and a benefit, but after a certain point is only a cost which will bring the society down.
The “homeostasis” is the process which the complex society use to compensate forces which destabilize the society. This analysis is applied to the Roman Empire, but analogy with our societies are also drawn.

The crisis is very close and we are swimming in it, but we are not able to see the water.

A small discovery

I just discovered that in using pylab you can plot an array or list of number vs the list lenght by default.

Let’s say we have a list of point like [2,2,3,4,5,5,6,10, 23,45,58,42,12]
points = [2,2,3,4,5,5,6,10,23,45,58,42,12]
well to plot this you just have to
pylab.plot(points)

and this is the results:

pylab example

pylab example

The whole script in python
import pylab
points = [2,2,3,4,5,5,6,10,23,45,58,42,12]
pylab.plot(points)
pylab.show()

The last one is needed to show the window, which will happen automatically if you are running the script using ipython with the pylab option.

I just discovered by chance. I always thought that to plot you need x and y, but of course it’s possible to infer the x if you just one to plot only the points, cause each point in the list has a “Cartesian coordinates” embedded, i.e. [0,2];[1,2];[2,3];[3,4];… etc.

Say hello to NeuronVisio

Today I released the first public release 0.1.0 of NeuronVisio.

NeuronVisio is a GTK2 user interface for NEURON simulator.

NeuronVisio connects with NEURON using the new python NEURON interface.

  • 3D visualization of the model with the possibility to change it runtime
  • Creation of vectors to record any variable present in the section
  • Pylab integration to plot directly the result of the simulation
  • Explore of the timecourse of any variable among time using a color coded scale in the 3d representation
  • the GUI runs in its own thread so it’s possible to use the console to modify/interact with the model.

pyramidal neuron model

The code is on github (which I discover create automatically a tarball for you when you tag the package… sweet πŸ™‚ )

Getting away from some Gtk Warning

If you found a warning like:

GtkWarning: Ignoring the separator setting

when you are playing around with glade and pygtk it is because glade create any dialogue with the “Has separator” set to No, instead Yes.

More info in this #587288

On a side note this solved the first bug/warning on neuronvisio πŸ™‚

HIH someone πŸ™‚

Tracker website and (another) git workflow

Tracker is under a massive refactoring phase for the release of the 0.7.x series and there is a lot of work carried out. So to catch up and to give better info we started to work on the website to update the info over there.

Look at our new shiny development page where you can find the details and how to install tracker from the source with all the packages that you need in a debian based distro. BTW if you know what you have to install in Fedora and friends just let us know and we are going to add them in no time.

Anyway, I started this post to highlight another hint on how to use git (and where to find later when I will forget…)

The good news is Tshepang stated to contribute to the tracker website (source tracker website – if you feel like patches are always welcomed and yes you have to download all the gnomeweb-wml module).

Before today I always used git as a stand alone developer, but now I had to figure out how to track the changes in the master form the other projects, without losing all my work and the patches.

So here is the solution of this riddle.

From the master create your own branch

git checkout -b WIP

apply the patch and work on the branch

git am 0001-super_patch.patch

hack hack hack

git commit -am "A lot of good stuff"

Now you ready to go. You want to put back your changes in the master and then push on the server.

How to do that?

You must rebase your local Work In Progress branch with the local master that track the remote master. eh? yeah. Let’s go through the command:

git checkout master #Back in master

git pull # Grab all the new updates

git checkout WIP # Back in WIP

git rebase master #The Black magic. Commit all you change on top of the master ones

and now you good to go:

git checkout master # Back in master
git merge WIP # It’s gonna be a fast foward merge so no commit message will be created; that is exactly what you want, because the meaningful commits’ messages are in the WIP branch and a commit with the message “merged WIP” is not that interesting.

git push # And we go online. πŸ™‚

On a side note:
gitg is your friend.

gitg screenshot

gitg screenshot