Hi, I’m new to Julia. Recently, I’ve used the backslash (\) operator to solve a linear system. However, I don’t know how it is implemented. I wanted to know it so I traced the code.
To find the specific code run in a function call you can simply use julia> @edit myfun(arg1, arg2) and then your favorite editor will pop up at the correct file and line.
Edit: I realized that I may have misunderstood your question. The short answer to “what happens when I do A\B?” is “it depends on what A and B are”. You can see that the function starting in line 1110 starts checking some different cases where better solutions exists or else uses the default fallback of qr(A)\B or lu(A) \ B for square matrices. So you’ll need to trace the calls further by for example julia> @edit qr(A)\B
In general, a subroutine in a LAPACK library outside julia may ultimately be called to solve the system: the default library that comes with julia is OpenBLAS.