How to solve vector equation $\textbf{x}+2(\textbf{x}^T\cdot\textbf{a})\cdot\textbf{x}=\textbf{b}$

80 Views Asked by At

How can I analytically/symbolically solve the following vector equation $$\textbf{x}+2(\textbf{x}^T\cdot\textbf{a})\cdot\textbf{x}=\textbf{b}$$

where $\textbf{x}$ is the unknown column vector of real values, $\textbf{a}$ and $\textbf{b}$ are known column vectors of real values.

1

There are 1 best solutions below

1
On BEST ANSWER

Given $x+2a^⊤x⋅x = (1+2a^⊤x)x = b$, we immediately see that a necessary condition for the equation to be solvable is that $x$ must be parallel, i.e. a scalar multiple of $b$.

So let $x=λb$, then we have

$$\begin{aligned} (1+2λa^⊤b)λb &= b \\⟺ ((1+2λa^⊤b)λ - 1)b &= 0 \\⟺ b=0∨ (1+2λa^⊤b)λ - 1 &=0 \end{aligned}$$

The latter case reduces to a quadratic equation in a single variable

$$ (2a^⊤b) λ^2 + λ - 1 =0$$

which gives us the solutions $λ=\frac{-1±\sqrt{1+8a^⊤b}}{4a^⊤b}$.

In particular, we have that a real solution only exists if the following criteria are met:

  1. $a\not\perp b$, i.e. $a$ is not orthogonal to $b$.
  2. $a^⊤b≥-1/8$.

If $a^⊤b=-1/8$, the solution is uniquely given by $x=2b$.