Fantastic Adjoints And How To Find Them

1 minute read

This is a very short note about the adjoints. I hope it would be as useful for those feeling a bit confused with this wonderful mathematical concept as it was for me. Although there is not a single word about sensitivity, this very short example can give you a sneek peek.

So, what’s the matter?

I have a problem: I need to find a vector, , satisfying the following linear algebra problem:

Here is some matrix (presumably very unpleasant and big) or a matrix operator, is called the external forcing, and both and are given. Naturally, I would invert the matrix and multiply the right hand side by it. The answer would be:

In practice, finding itself is rarely the goal. Some function of is almost always much more meaningful. This can be, for instance, a linear combination with another vector, . Picking a vector of ones will give us the average value of .

The Adjoint

We can take the direct operator and do the complex conjugation and matrix transpose. The new adjoint operator then works this way:

Now let’s introduce the dual problem, which depends on previously discussed vector :

Using the definition of adjoint operator, I can show:

This is a wonderful result. It means, that can be found for any without recomputation of the very first matrix equation just by taking an inner product of with the we care at the moment.

The only cost of such computation is to calculate once.

Summing up

A problem of finding the inner product for being the solution of , and given can be cheaply solved for any forcing term . First, we need to find the adjoint operator . Second, we solve the dual problem for a vector once. Third, the target inner product equals to .