Open-source tool chain

I use open-source software whenever possible. Although there are cases where a proprietary tool is the right choice, open-source tools have many advantages.

  • Complete control of your critical tools–the vendor will never stop supporting your platform, an upgrade will never be forced upon you, and the licensing fee will never increase.
  • Open-source tools tend to utilize open standards and exchange data much more fluidly than proprietary tools.
  • If necessary, your developers can fix a bug themselves. A bug might be critical to your application, but that doesn’t mean it’s a high priority for the application vendor.

Open-Source Tools

  • Programming
    • Python for rapid application development
    • Numpy and Scipy for scientific omputing
    • C, C++ and Fortran for optimized code
  • Parallel Computing
    • MPI
    • PETSC
    • pypar and mpi4py (Python bindings for MPI)
    • CUDA and PyCUDA for massively parallel execution on NVIDIA graphics processors (GPUs)
  • Simulation
    • OpenFOAM: Computational Fluid Dynamics
    • libmesh: finite element library
  • Visualization
    • Matplotlib (2D plotting)
    • VTK (3D visualization)
    • Paraview (3D visualization)
    • VMD (Molecular dynamics visualization)
  • Documentation
    • LyX
    • LaTeX
    • Asymptote (technical vector graphics)
    • Office and OpenOffice
  • Version control
    • Subversion
    • Git
  • OpenFOAM
  • Sage (computer algebra system similar to Mathematica or MATLAB)

Future additions

 

Leave a Reply