Best practices for solving overdetermined systems of linear equations


ROOT Version: 6.36.04
Platform: ubuntu linux
Compiler: g++


Dear ROOT users,

I would like to know what would be the best practice for solving the following overdetermined system of linear equations (shown as ASCII drawing below):

/                      \   /         \   /       \
| Ar_01  He_01  CO2_01 |   |         |   | IC_01 |
| Ar_02  He_02  CO2_02 |   | Ar__PPM |   | IC_02 |
| Ar_03  He_03  CO2_03 | X | He__PPM | = | IC_03 |
| Ar_04  He_04  CO2_04 |   | CO2_PPM |   | IC_04 |
|...                   |   |         |   | ...   |
| Ar_50  He_50  CO2_50 |   |         |   | IC_50 |
\                      /   \         /   \       /

Where matrix at the left side of the equation and vector at the right side of the equation are known; and least-square solution of vector containing “PPM” entries is required.

Would greatly appreciate any help,

Kind regards,

Daniil Korshkov, Carleton University physics department

P.S. Sorry for ASCII drawing being distorted

Hi Daniil,

welcome to the ROOT forum.
Since your question is about linear algebra rather than ROOT, I’d recommend to discuss this with your supervisor. As a starter you could take a look at [1] or a linear algebra textbook.
If you do have a ROOT specific question or problem, please let us know.

Lukas

[1] Overdetermined system - Wikipedia

Hello Lukas,

Thank you for reaching out.

Since ROOT is a language specifically designed for solving mathematical problems, and due to workplace requirements I need to solve this problem using ROOT (sorry as I forgot to mention it before), I assumed there are plenty of people on this forum who have expertise solving such problems

Kind regards,

Daniil

Let me ping @Eddy_Offermann