##
I have converted *January 9, 2012*

*Posted by mareserinitatis in computers, research, science, solar physics.*

Tags: igloo, matlab, programming, scilab

trackback

Tags: igloo, matlab, programming, scilab

trackback

Because of the vagaries of my status at UMN (that is, I am an enrolled student, but I don’t pay tuition and therefore do not get some of the perks), I found out that I could no longer get access to Matlab. This is a bummer because, well, I need it for my thesis.

I’m trying to prove out some code and it’s easier to see what’s going on in Matlab because of the plotting functions. The idea is that I would like to write it up in there, see what’s going on, and then translate it to the dreaded Fortran.

Alas, I guess I’m having to break up with Matlab. Instead, I’m learning Scilab. I find this somewhat funny given how I was explaining to my engineering students last semester that once you know a computer language, it’s often easier to learn another. (Sadly, most chose not to learn a first one.) This is doubly so moving from Matlab to Scilab (or, I imagine, the reverse order) because they are so similar.

I like Scilab because it seems to me like a cleaned up version of Matlab. I don’t consider myself a master in the art of Matlab Kung Fu, but I’m passable. I have written a small program to solve the Boltzmann equation in the presence of an electromagnetic field and later solved the intractable igloo problem. However, there are some of the subtleties of matrix operations in Matlab which have always proved problematic for me, mostly dealing with conditional statements to indicate matrix indices, leaving me to fall back on loops. Not efficient, but it works. So far, it appears that these operations are more straightforward in Scilab. I also like the use of the % to indicate prenamed variables. I am all too guilty of using i as a counter and then being frustrated because it wouldn’t work as an imaginary value later in the program. And of course, I really like the price tag.

I haven’t yet gotten to some of the plotting I need, however, and as I understand it, that is where Matlab excels. We shall see.

Have you used both programs? If so, how do you think they compare?

If you are a student you can buy a student edition of matlab for 99$. You might be able to get reimbursed for it too if you have some scholarship money or from your advisor’s grant.

LikeLike

In the long run I think you would be much happier with Python/numpy/sicpy (a.k.a Python ecosystem). The user interface, at first, won’t feel like Matlab/Scilab/Octave but you will be in a much better spot as your project progresses, in my opinion having gone through a bunch of the same decisions.

LikeLike

I would probably be looking at it if this part of the project weren’t so small. I just need this to prove some things out, and the remainder of my work will be in Fortran. I am, however, very interested in picking up Python and will have to do it when I have time (hahahaha). 😀

LikeLike

I don’t want overly suggest the python ecosystem. But you can easily integrate your Fortran with Python. They have the f2py tools that will automatically integrate your Fortran code. This is nice because you can implement your number crunching in the compiled language and interactively interface and easily create plots through iPython. Its the trendy thing to do 🙂

LikeLike

I’ll have to look into it. Someone else I was talking to mentioned that there are some pretty good data analysis tools available in Python.

LikeLike

I’m a big fan of Scilab, more so now that the user interface has been tidied up. With both Matlab and Scilab though, I find the best way to get decent plots is to, after finding the data you want to plot, export it in a format that gnuplot can use. Then in gnuplot, export your plots as an SVG for tidying up and glamourising in Inkscape.

LikeLike

I’ve heard good things about gnuplot. A lot of the stuff I want to do is in polar coordinates, and I have to admit that Matlab’s interface there isn’t terribly easy to work with sometimes.

LikeLike