Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Linux Software useful for PhD

  1. Sep 3, 2016 #1
    Hi,

    I am a PhD student studying fluid dynamics, and have a heavy interest in numerical programming and simulations. I come from a background in Applied Mathematics and Theoretical Physics.

    I have an ubuntu system set up and I have the typical software I plan to be using regularly, ie MATLAB, Python, LaTeX.

    Is there any useful/fun software you guys recommend that either is obscure or something not many people would think of? Anything relevant to maths/physics or even just admin related to PhD is much appreciated!

    Even any coding languages which you think would be of worth, please throw them down to.

    Thanks!
     
  2. jcsd
  3. Sep 3, 2016 #2

    Dr Transport

    User Avatar
    Science Advisor
    Gold Member

    If you are doing CFD, you need a compiler for your code, C++ or FORTRAN because CFD unstructured grids take an immense amount of time to run and converge to a reasonable answer. Matlab is OK for initial algorithm development.
     
  4. Sep 3, 2016 #3

    jedishrfu

    Staff: Mentor

  5. Sep 4, 2016 #4
    Do you have any recommendations for source material to a novice of fortran
     
  6. Sep 4, 2016 #4

    Dr Transport

    User Avatar
    Science Advisor
    Gold Member

    Thousands of sites online...... and if your professor is older than 40, they most likely wrote fortran in the past.
     
  7. Sep 4, 2016 #5
  8. Sep 4, 2016 #6

    jedishrfu

    Staff: Mentor

  9. Sep 6, 2016 #7
    I also recommend to use something like http://www.japref.org [Broken] to keep track of your growing list of research papers, it can be easily used with latex to create bibliographies. You can also put an addon in firefox so if you are on springer or elsevier, you can directly put the bibliography information in jabref.

    For making simple drawings (with latex support) I used to use http://epb.lbl.gov/xfig/ [Broken], but it is no longer maintained (any other recommendations?).
    For making 2d plots, I use gnuplot or xmgrace

    I also recommend playing around with command lines using sed and awk to manipulate output files. there are some interesting websites with lists of oneliners that are real time savers.
    When debugging, use the debugger. That's what it's for. Also learn how to use a profiler. I have used valgrind, but if there are others that are better, I'm happy to hear about them.
     
    Last edited by a moderator: May 8, 2017
  10. Sep 6, 2016 #8

    Krylov

    User Avatar
    Science Advisor
    Education Advisor

    In addition to what was mentioned above I would like to recommend the "Guide to Fortran 200x Programming" by Walt Brainerd. I read the book for ##x = 3## and found it very useful. Recently I saw that there is a new edition corresponding to ##x = 8##. I also heard good things about "Modern Fortran in Practice" by Arjen Markus, but I do not own that book myself.

    As a compiler you could use gfortran, which is part of GCC. Depending on your employment situation and your hardware, you could also be eligible for free use of Intel's compiler and fine-tuned versions of standard numerical libraries (BLAS and LAPACK, among others).
     
    Last edited: Sep 6, 2016
  11. Sep 6, 2016 #9

    jedishrfu

    Staff: Mentor

    If you're working in a mixed programming environment then you might want to check out Julia as it can interoperable with fortran, R, Python and c/c++. Julia is a more modern open source version of MATLAB.

    It has downloadable modules to create all kinds of charting.

    It's available in the anaconda distro mentioned earlier.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted