My research work is completely based on simulation. I do a lot of numerical computing and have used a number of great Open source libraries, tools and applications. Ever since I started my research, I have tried to put forward a case of using open source tools for research through my articles and other ways, which i summarize below:
Past/Current Efforts:
My article Hey Researcher! Open Source tools for you [1], as the name suggests talks about open source numerical libraries, drawing and plotting tools, and typesetting tools. I also have written a six-part article series, Getting Started with GNU Octave [2], talking about beginner friendly tutorial introduction to GNU Octave. In another article, I talked about the LaTex class for presentation Beamer- Typesetting’ Presentations with Beamer [3]. I have also written a beginner friendly article on Apache Hadoop titled Hands-on Hadoop for cluster computing [4].
My most recent effort in this direction is Fedora Scientific [5], which is a custom Fedora Linux distribution which ships with a plethora of programming tools, libraries and software to enable open source powered scientific research. The spin will be officially released with the upcoming Fedora 16 release, showing the need for such a Linux distribution. This will definitely contribute a lot to improving the awareness about using open source tools for scientific research.Recently, I wrote an article for an Australian Journalism venture, titled Explainer: Evolutionary Algorithms [6], where I explain Optimization and Evolutionary algorithms in a fashion that is interesting, intuitive and drives home the ideas.
Relevant Past/Current Efforts:
[1] Hey Researcher! Open Source tools for you: http://linuxgazette.net/174/saha.html
[2] Getting started with GNU Octave, Parts 1- 6 (Linux For You, 2010)
[3] Typesetting’ Presentations with Beamer (Linux For You,November, 2009)
[4] Hands-on Hadoop for cluster computing: http://web.archive.org/web/20090210194030/http://www.linux.com/feature/150395
[5] Fedora Scientific Spin: http://spins.fedoraproject.org/scientific-kde/
[6] Explainer: Evolutionary Algorithms: http://theconversation.edu.au/explainer-evolutionary-algorithms-3580
Future Plans
My immediate future plan is to work on a book on this topic. I have approached a few publishers, but they haven’t yet said a Yes or No. Till then, I shall just have the proposed Table of Contents here:
Title: Open Source Scientific Computing
Part – I: Operating System
Chapter 1: Fedora Scientific Linux
Chapter 2: Support for scientific computing in other Linux distributions – Debian Science, and others.Part – II: Generic tools and libraries
Chapter 3: Numerical Computing tools
3.1 GNU Octave
3.2 Scilab
3.3 MiscellaneousChapter 4: C/C++ programming libraries
4.1 GNU Scientific library
4.2 GNU Multi-precision library
4.3 LAPACK
4.4 MiscellaneousChapter 5: Python tools and libraries
5.1 SciPy (NumPy)
5.2 Spyder
5.3 SAGE Math
5.4 MiscellaneousChapter 6: Others
6.1 Fortran libraries
6.2 R and the ecosystem around it
6.3 Perl libraries/tools
6.4 Root
6.5 MiscellaneousPart – III: Parallel and Distributed Computing Libraries
Chapter 7: OpenMPI and PVM
Chapter 8: OpenMP
Chapter 9: Miscellaneous (Torque. Hadoop,…)
Part- IV: Typesetting, Plotting, and Drawing
Chapter 10: LaTex compilers/environments
Chapter 11: Plotting: gnuplot and matplotlib
Chapter 12: MayaVi
Chapter 13: Presentations: Beamer, other tools
Part-V: Version Control, Backup tools and Document managers
Chapter 14: Bibliography/PDF managers
Chapter 15: Version Control
15.1 SVN
15.2 git
15.3 MercurialChapter 16: Backup tools
Part-VI: The Beginning of the End
Chapter 17: Consolidating what we learnt
Chapter 18: Support forums/resources/mailing lists
I am fully aware of the fact that I could write up the book myself and put it up as a PDF or self-publish it. May be I shall someday. But having a publisher vouch for the book would just help me not withdraw from the project during those times when you have other more important things to finish.
Drop a line, if you have a suggestion or a comment.
Relevant from around the web:
