I need to solve a nonlinear system of equations that looks like this 1/(n_4)(c_4/(b_4R)−ln(1−x_1−x_2−x_3))=1/n_3(c_3/(b_3R)−ln(x_3))=1/n_2(c_2/(b_2R)−ln(x_2))=1/n_1(c_1/(b_1R)−ln(x_1))
bravere4g
Open question
2022-08-19
Solve numerical system of nonlinear equations? I need to solve a nonlinear system of equations that looks like this
The numerical equivalent of what i'm trying to solve right now is
What algorithm should i use to solve this? If anyone can solve this, could you post how you did it? I tried using a multivariable newton's algorithm but my jacobian exploded
Answer & Explanation
penzionekta
Beginner2022-08-20Added 8 answers
Hint I think that you could reduce your problem to a single equation of a single variable. Suppose that you define
So, you have
So can be expressed as a function of
and you end with a single nonlinear equation where only appears.
You could notice that your equation in also write
which, more than likely, would much better conditionned if written
Assuming all , this shows that an upper bound of corresponds to the maximum,over , of the terms. This gives a starting value for unknown Solve it for (Newton method seems to be very appropriate) and go backwards to get In such a manner, you could notice that you could have as many equations as you could wish and apply the same procedure. Using the data from your problem, we can easily find that the solution is from which we get which are your answers.
Grace Jefferson
Beginner2022-08-21Added 2 answers
Ok i actually found the answer and i'm just gonna share it since no one has posted yet
Rearrange the equation for easier Jacobian
Construct a system of equations in the form of for
Construct Jacobian for the system
Solve for using Gaussian elimination Update by using , in this case using Repeat until reached acceptable error bound My jacobian exploded because i didn't give a good initial guess, but then i guessed slightly lower and everything worked.