1

I am doing a PhD in experimental particle physics. In this field, at least in my experience, almost the 100 % of the job is done using some software, for example Root and Python, because of the numerical nature of the calculations.

On the other hand, each time I had to do some theoretical developments I ended up working in a mixture of hand work (as in primary school but harder) and some tedious calculations with the help of wxMaxima. When I tried to switch 100 % to wxMaxima (as if it were Python for numerical analysis) I found that it was not possible, some (yet simple but tedious) calculations I still had to proceed by hand to get human-readable and useful results.

So this makes me wonder how do theoretical physicists deal with this? How are calculations done? By hand in a paper? With CAS software? Which software? A mixture of different ways as I did? In your minds?

BioPhysicist
  • 56,248
user171780
  • 1,844
  • 1
  • 9
  • 20
  • 3
    For the people I know it seems to be a mixture of Wolfram Mathematica and working by hand. If you're doing something really really complicated, like higher order graviton amplitudes or something, then you probably are going to find special software or use a special mathematica package. – user1379857 May 07 '21 at 00:16
  • 1
    Calculations of which quantities are we talking about here? Some parts of theory don't require computer-assisted computations at all, others might involve computation of algebraic invariants with CAS software suited to the task, still others numeric computations or solving complicated integrals. "Theoretical physics" is a wide field and I think this question is too vague to be usefully answered. – ACuriousMind May 07 '21 at 00:17
  • 2
    I think it also depends on the person and what their "favorite poison" is. If you are (or train yourself) to be clean and accurate with handwritten calculations, then handwritten calculations (or "post processing" the output of naively written mathematica code by hand) require very little overhead. But it is also often possible to use a series of tricks to get mathematica to give you useful output so you don't need to do as much by hand, if you're willing to put in the time to become a skilled mathematica user. Like others have said, there are also special packages for some tasks. – Andrew May 07 '21 at 00:24
  • 1
    I'm just doing a simple calculation of electron proton scattering to be put into a generator program (there was a slight change to the vertex of the Feynman diagram) and just doing the fermion spin sums already results in up to a few thousand terms...the only time I do hand written processing is so I can have a simplified version of what exactly is going into the calculation. What comes out is often quite complicated but is typically evaluated numerically. As my advisor puts it, it doesn't have to be beautiful because in the end we are just going to let a computer run it through a Monte Carlo. – Triatticus May 07 '21 at 00:44

1 Answers1

7

Depends on what you are doing. The nature of work in theoretical physics is as varied as the theoretical physicist. Most likely, the work takes on different forms.

For the most simple calculations, good old pen(cil) and paper is still the best thing. I keep a little note book beside me where I can calculate something quickly if I need to.

For more complicated calculations, the use of analytic software (such as Maple or Mathematica) is essential. I use Maple. The reason is that such large calculation can easily cause you to make copy errors (forgetting a factor of 2 or something) when you do it on paper. That can waste a lot of time when you need to find such errors and redo the calculations. If you use the analytic software in a disciplined way, you can avoid such copy errors. Keep in mind that the results that the analytic software produces can be pages of messy expressions. Such software is not good at doing simplifications of expressions. However, it does provide some tools that you can use to try and simplify the expressions. Over the years, I have develop a skill at simplifying such expressions using these tools, but it is something of an art that takes time to learn.

For numerical simulations/calculations one can use software that is better geared for such calculations. There are many options. I use octave, which is open source. Julia is a more powerful version suitable for parallel computing.

Then last and not least, when I need to do a derivation instead of a calculation, I often do it directly in Latex. Analytic software is not always suitable for such derivations. Since I would then have to do it on paper anyway and because I often want to write it up in some document that I may submit for publication, I just do the derivations directly in Latex, which I can compile and keep as notes. The benefit is that I can include as many steps in the derivation as I like and then just comment out some of them when I compile the document.

Hope it give you a glimpse of the way theoretical physicists do their work. Sorry if this is a somewhat subjective view of it.

flippiefanus
  • 14,614