Given matrices $A, B \in \mathbb{R}^{n\times n}$, I would like to solve the following optimization problem,

$$\begin{array}{ll} \underset{v \in \mathbb{R}^n}{\text{maximize}} & \|Av\|_2+\|Bv\|_2\\ \text{subject to} & \|v\|_2 = 1\end{array}$$

I'm hoping to solve this with some sort of convex optimization approach, such as SDP or SOCP. When $B=0$, the problem reduces to simply asking for the largest singular value of $A$, which can be solved by an SDP (see here for instance although it's very well known). It can also be computed with SVD of course.

I've tried lots of different approaches but can't seem to write it in a convex way. I would be okay with an SVD-like solution, that is, one that is iterative not a convex program, but I would much prefer a convex program because ultimately I would like to use this as an inner program to something else, ideally.

As a note on one attempt that got a decent ways, I did manage to establish that it was equivalent to the problem,

$$\begin{array}{ll} \underset{u, v \in \mathbb{R}^n}{\text{maximize}} & \|A^T u + B^T v\|_2\\ \text{subject to} & \|u\|_2 = \|v\|_2 = 1\end{array}$$

twolagrange multipliers it came out much messier. Instead of $x_1 = -(A^T A)^{-1} A^T B x_2$, it was $x_1 = (1-\lambda_1 A^T A)^{-1} A^T B x_2$. This loses nice properties like it being a projector. And if I plug $x_1$ in, it's very hard to solve for $x_2$, because that $\lambda_2$ is floating around. $\endgroup$