My thoughts on the idea of “God”

The idea of a God as an entity that can think is the following.

If a God exists, then it must follow the laws of Physics, i.e. he cannot break the rules that we know hold until today. This severely limits an almighty God who can do whatever he wants at will. This also implies that if an entity that can think exists throughout most of the universe, then we could consider the universe as a sort of brain where an equivalent to neurons would be found in galaxies. Unfortunately I believe that such a large brain makes no sense whatsoever, despite having almost no knowledge in neurosciences and how conciousness appears from a stack of neurons. I have read that we’re not even sure that neurons are required nor sufficient for conciousness to appear.

Therefore if God exists, then it has very limited powers and cannot be more than earthly creatures or so, just like we are.


This thinking has at least the following flaws :

  • The laws of Physics as we know them could be broken while we’re not watching and so that we would have no evidence that the laws were broken.
  • The universe mostly contains dark matter, something we’re not really understand well. I don’t think galaxies are its main constituents.

Nevertheless, I still believe that an intelligent God cannot exists.


Pigeon conoisseur

A high school level study that could be performed on pigeons to get to know the answer to serveral questions listed below.

Assume that a student at a certain distance r from a group of N pigeons claps his hands or one of his shoes on the ground. The pigeons can either fly away (we’ll consider fly away when they fly away at least say 10 meters away from where they were previously to the clapping sound) or stay at the same place.

  • In average (i.e. you have to perform the experiment multiple times, with a different set of pigeons each time), how many dB are required for the pigeon(s) to fly away?
  • Is this number dependent on the number N of pigeons in the group of pigeons?
  • If so, how is this dependence? Elaborate a theory to explain this result.
  • Is there any difference if there’s a bright flash simulataenous with the sound?
  • Is the answer to the 1st question also dependent on the distance r between the student and the pigeons? If so, how is this dependence?

Entropy in /dev/random vs used RAM

This time I didn’t really know what to let my computer do. So I opted to let it calculate the correlation between used RAM and entropy pool level in /dev/random. At first I thought that there would be no correlation whatsoever since I thought that the two variables were almost totally unrelated. It turns out I was wrong but that makes sense now.

In order to fulfil this task, I decided to make a measurement of both values every 5 seconds, during a few hours where I’d use the computer and some minutes where I wasn’t.

The bash and R scripts that I used can be found on my github repository.

And the results there.

Here’s a plot of both the entropy and used RAM in function of time.

entropy-ram  Like one could guess from the plot, the correlation is negative. For the whole data (that goes outside the range of the graph), the correlation turns out to be worth about -0.20.

One explanation for such (surprising to me) result is that the more used RAM implies more programs running and programs seem to use /dev/random (though I wonder why they don’t use /dev/urandom instead since the latter is “ok” for more than 99% of purposes including random password generators).

One day later I decided to rerun the experiment, this time well after having rebooted my machine so that I don’t start with a low used RAM (and high entropy pool level). To my surprise the results were quite different: the correlation is worth only -0.02. A graph of the results an be found below:


It looks like long period of inactivity left both my used RAM and entropy pool level oscillating around a certain value, and as soon as activity went up in my computer both values started to be more chaotic.

Topics I would have loved to learn during my undergraduate degree

I’ve completed the curriculum of a “licenciatura en física” which corresponds roughly to a masters degree in physics -5 years of studies at university-. While I’ve had to study what I’d call unusual topics for a physics undergraduate degree such as firing of neurons, there are several “holes”  in topics I would have loved to learn.

Thus far my list of such topics includes:

  • Scattering, in both CM and QM. Indeed I haven’t dealt at all with scattering problems and theory in neither classical or quantum mechanics. I feel this is a huge lack of knowledge that needs to be filled up someday.
  • Solving problems numerically. I’ve had one numerical analysis course that introduced some methods to solve ODE’s, numerical integrations, etc. but it wasn’t geared toward solving physics problems, unfortunately. It was done with Fortran 90, which is probably not the best choice as a first programming language for a physicist nowadays. In the end I feel like they should have taught us Python and help us to solve physical problems like ODE’s and PDE’s that we see hundreds of times during our degree.
  • General relativity. We’ve seen Special relativity using tensors and the Minkowski’s metric, but I feel like an introduction to general relativity would have been quite interesting. Black holes included.
  • Feynman path integrals. I’ve seen them mentioned a lot on the internet in forums and physics stack exchange, yet I have no knowledge on them.
  • Feynman diagrams. Idem than Feynman path integrals.
  • Decoherence in quantum mechanics. I would have loved to learn more about dechoherence and the collapse of the wave function which has never been mentioned during my studies.
  • Solid State Physics. The course I took wasn’t formal enough to my taste and the exercises to solve weren’t  that hard nor numerous so that in the end I feel like the introduction to this topic has been too light.
  • Group theory.

Cartesian unit vectors in terms of spherical unit vectors

Here’s a way to express the Cartesian unit vectors \hat x, \hat y and \hat z in terms of \hat r, \hat \phi and \hat \theta where \theta is the zenithal angle and \phi is the azimuthal angle.

We have that \begin{cases}x=r\cos\phi\sin\theta \\y=r\sin\phi\sin\theta\\z=r\cos\theta\end{cases}.

Keeping in mind the definition of the gradient operator: \nabla = (\frac{1}{h_r}\frac{\partial}{\partial r}\hat r + \frac{1}{h_\theta}\frac{\partial }{\partial \theta}\hat \theta+\frac{1}{h_\phi}\frac{\partial}{\partial \phi} \hat \phi) where h_{e_i}=|\frac{\partial \vec r}{\partial e_i}|, so that \nabla =(\frac{\partial}{\partial r}\hat r+ \frac{1}{r}\frac{\partial }{\partial \theta} \hat \theta +\frac{1}{r\sin \theta}\frac{\partial}{\partial \phi}\hat \phi).

The Cartesian unit vectors are simply \hat x = \nabla x =\cos\phi\sin \theta \hat r + \cos\phi\cos\theta\hat\theta-\sin\phi\hat\phi,

\hat y = \nabla y =\sin\phi\sin \theta \hat r + \sin\phi\cos\theta\hat\theta+\cos\phi\hat\phi,

\hat z = \nabla z =\cos \theta \hat r-\sin \theta \hat \theta.

Spherical unit vectors in terms of Cartesian unit vectors

Here’s a way to obtain the spherical unit vectors \hat r, \hat \theta and \hat \phi in terms of the Cartesian unit vectors \hat x, \hat y and \hat z. Note that \theta correspond to the zenithal angle while \phi is the azimuthal angle.

Starting from \begin{cases}x=r\cos\phi\sin\theta \\y=r\sin\phi\sin\theta\\z=r\cos\theta\end{cases}    and \vec r = x \hat x + y \hat y + z\hat z, the spherical unit vectors are given by :

\hat \phi = \frac{1}{h_\phi} \frac{\partial \vec r}{\partial \phi} where h_\phi=|\frac{\partial \vec r}{\partial \phi}|=r\sin \theta is the scale factor. So we have that \hat \phi = \frac{1}{r \sin \theta}(-r\sin \phi \sin \theta \hat x + r \sin \theta \cos \phi \hat y) = - \sin \phi \hat x + \cos \phi \hat y.

While \hat \theta = \frac{1}{r}(r \cos\phi\cos\theta \hat x + r \sin\phi \cos\theta \hat y -r\sin\theta \hat z)=\cos\phi\cos\theta \hat x + \sin\phi \cos\theta \hat y -\sin\theta \hat z;

Finally, \hat r=\frac{\partial \vec r}{\partial r}=\cos\phi\sin\theta \hat x + \sin\phi\sin\theta\hat y +\cos\theta \hat z.

Some thoughts on the Euler project

The Euler project ( is a collection of currently over 400 mathematics/programming problems. The problems are generally meant to be solved via both mathematical and programming “tricks” or skills and only a small fraction of them are solvable via brute force. There’s a ranking of problem’s difficulty based on the number of people who successfully managed to solve the problems so that gives you an idea about what to expect about the difficulty of any particular problem once you’ve solved a few of them.

I think it’s a very nice project to spark interest in programming for “math people” and also to learn some programming.

You basically look for an interesting Euler project problem, i.e. a problem you read and really want to know the answer to, then you pick any programming language you feel comfortable with and you start to think of ways to solve the problem. You try out stuffs and check whether that works or not. The program should not take more than about 1 minute of running time to solve the problem so it’s easy to check whether your method is not well suited.

I think this project should be mentioned in high schools even though it shouldn’t be hard to find the answer to all of the problems on the web. If someone is serious about it, he wouldn’t look for the solution and that’s what matters most.

The only downside I’ve found so far is that it can get pretty addictive and can make one spend way too much time thinking about a particular problem and that could have a bad impact on one’s life. You’ve been warned. 🙂