I have a function:
$ f(\vec x) = \frac 12 \vec x \cdot (A \vec x) - \vec x \cdot \vec b $
Now I have to find the gradient of the function: $\vec \nabla f(\vec x)$.
Is there some easy way to do this?
Currently I have this and it feels pretty cumbersome.
\begin{align*} f(\vec x) &= \frac 12 \left( x_i \left( A \vec x \right)^i \right) - x^i b_i \\ \left(\nabla f(\vec x) \right)_i &= \frac 12 \frac{\partial}{\partial x_i} \left( x_i \left( A \vec x \right)^i\right) - b_i \\ \left(\nabla f(\vec x) \right)_i &= \frac 12 \left( \left( A \vec x \right)_i + x_i \frac{\partial}{\partial x_i} \left( A \vec x \right)_i\right) - b_i \\ \left(\nabla f(\vec x) \right)_i &= \frac 12 \left( a_i^j x_j + x_i \frac{\partial}{\partial x_i} a_i^j x_j \right) - b_i \\ \left(\nabla f(\vec x) \right)_i &= \frac 12 \left( a_i^j x_j + x_i a_{ii} \right) - b_i \\ \left(\nabla f(\vec x) \right)_i &= \frac 12 \left( a_i^j x_j + a_{ii} x_i \right) - b_i \\ \nabla f(\vec x) &= \frac 12 A \vec x + \frac 12 a_{ii} x_i \vec{e^i} - \vec b \\ \end{align*}
I now use a new index $z$ for the indexing and have now $i$ free for the dot products:
$\newcommand{\vnabla}{\vec{\nabla}} \newcommand{\half}{\frac{1}{2}}$
\begin{align*} f(\vec x) &= \half \left( x_i \left( A \vec x \right)^i \right) - x^i b_i \\ \left(\nabla f(\vec x) \right)_z &= \half \frac{\partial}{\partial x_z} \left( x_i \left( A \vec x \right)^i\right) - b_z \\ \left(\vnabla f(\vec x) \right)_z &= \half \left( \left( A \vec x \right)_z + x_i \frac{\partial}{\partial x_z} \left( A \vec x \right)^i\right) - b_z \\ \left(\vnabla f(\vec x) \right)_z &= \half \left( \left( A \vec x \right)_z + x^i \frac{\partial}{\partial x_z} a_i^j x_j \right) - b_z \\ \left(\vnabla f(\vec x) \right)_z &= \half \left( \left( A \vec x \right)_z + x^i a_{iz} \right) - b_z \\ \left(\vnabla f(\vec x) \right)_z &= \half \left( \left( A \vec x \right)_z + a_{iz} x^i \right) - b_z \\ \vnabla f(\vec x) &= \half A \vec x + \half A^t \vec x - \vec b \\ \vnabla f(\vec x) &= A \vec x - \vec b \\ \end{align*}
The last step can only be done if $A$ is symmetric, of course.