1AUG2019 SolveSys  Equation Library and Nonlinear Systems Solver

02102017, 04:46 PM
Post: #7




RE: SolveSys  Equation Library and Multiple Equations Solver
It looks like our equations are slightly different. If your equation is \( \left( \frac{A+B}{A} \right) ^2 = 8.377 \) then a guess of A=1 and B=2 would lead to a solution whereas A=2 and B=1 would lead to a failed line search.
If your equation is \( \left( \frac{A+B}{B} \right) ^2 = 8.377 \)  notice the denominator  then a guess of A=2 and B=1 would lead to a solution; A=1 and B=2 would lead to a failed line search (symmetry in the variables compared to the first case) For the rest of this post, let us assume you used the first form of (with A in the denominator). Assuming that our application is bugfree (doubtful at the moment), then A=2 and B=1 is a point for which a line search is going to fail. To see how this might come to be, let me explain the algorithm a bit. In the recent versions, we are additionally solving for the minimums of another function f = 1/2 (F.F). Notice that the zeros of F are guaranteed minimums of f (since it is a nonnegative function). However, not all minimums of f are zeros of F  no worries, we simply check whether \( \ F \ \) is sufficiently small enough). We are still using Newton's method, wherein we compute \( \Delta x = J^{1} \cdot F \) and obtain \( x_\text{new} = x_\text{old} + \Delta x \), however we scale the step \( \Delta x \) by \( \lambda \) so that we guarantee a decrease in \( \ F \ \). (J here represents the Jacobian of F). This is the line search portion of the algorithm. You can read about line searches here: http://reference.wolfram.com/language/tu...thods.html Basically, the line search tries to find a suitable \( \lambda \) that satisfies the strong Wolfe conditions (so that we have convergence). (In the link above, they call the scalar factor \( \alpha^* \) ). From the link: Quote:Typically, it only takes a few iterations to find a point satisfying the conditions. However, the line search is not always able to find a point that satisfies the conditions. Usually this is because there is insufficient precision to compute the points closely enough to satisfy the conditions, but it can also be caused by functions that are not completely smooth or vary extremely slowly in the neighborhood of a minimum. So in the end, A=2 and B=1 is just not a good guess (again, assuming A is the variable in the denominator of your equation involving 8.377). Graph 3D  QPI  SolveSys 

« Next Oldest  Next Newest »

User(s) browsing this thread: 2 Guest(s)