I have a matrix algebra problem. It's a vibration analysis problem, with the parameters below (I'm using Matlab notation):

x - displacement (vector) found from x=V*q
F - Force vector, found from F=A.*x.^2 (A is a vector of constants)
V - matrix of eigenvectors
Q - Generalised force vector, found from Q=V'*F (transpose of V times force vector)
q - Modal participation factor, found from q=Q.*B (B is a vector of constants)

So the issue is that, x is dependent on q, which is dependent on Q, which is dependent on F, which is dependent on x.^2... a circular reference.

In the past I made some assumptions which allowed me to solve this using a bisection search (the assumption was that only the first element of Q and column of V had any impact so I ignored the rest and solved it using a bisection search). It would be good if I didn't have to make this assumption. Is there some way of rearranging it so I could solve x-Cx^2=0? Like a quadratic equation but with matrices? I'm guessing you could juggle F,V,q,Q etc. to make C but my matrix algebra is a bit rubbish, and I also have no idea how to go about solving the quadratic equation even if I could rearrange for C. Any ideas? Maybe a Newton Raphson type thing?

Thanks for any help you can offer!