I have some problems by solving a non-linear system. The system may be written in the form:
$Ax=b$
The problem is that matrix $A$ and vector $b$ depend on $x$ so
$A=A(x) \quad b=b(x) \quad \Longrightarrow\quad Ax=b \equiv A(x)x=b(x)$
So there is no way to solve the system in the standard way $x=A^{-1}b$. Since a numerical solution would be enough for my problem, my idea was to proceed numerically: I guess a certain $x_0$ (supposed to be near the real solution of the system) and I evaluate $x_1 = A^{-1}(x_0)b(x_0)$. Thereafter, I proceed by iterating:
$x_{k+1} = A^{-1}(x_k)b(x_k)$
The problem is that this procedure never converges. Is there something wrong in your opinion? Do you think there are better way to solve this problem?
Thank you very much!
your numerical approach does not solve your problem. You just assume a random starting point and plug that into your equation giving basically a random output. Now you use this random output again as input. There is no reason why your algorithm should ever converge, as you do not compare your result with the expected result in any way. You should at least plug your solution in the original equation $A(x)\cdot x$ and see how much it differs from $b(x)$ to get at least any information about if your most recent iteration got better or not.
I suggest you start reading here: https://en.wikipedia.org/wiki/Newton%27s_method
Or here on stackexchange about the Newton-Raphson algorithm do get a better understanding of the way to solve such problems