Now using crisp min for evaluating error function and softmin0 when computing Jacobian.
Cleaned up Newton iteration code in preparation for implementing method using maximally dissipative sliding directions.
Implemented solution strategy that uses Newton iteration to solve for maximally dissipative sliding directions. Step length alpha is found in an outer loop using fixed-point iteration. Still tracking down a bug that appears in test A4 with mu=0.
Fixed bug in control flow. Newton iteration loop in generateAndSolveUsingNewtonWithPMD() wasn't exiting on convergence.
Corrected familiar sign errors in error function and Jacobian due to opposite sense of impulses. Catching cases where no directional information is available.
Added missing sliding cases to error and Jacobian methods, and corrected sign errors. Confirmed that vanilla PLUS Newton method matches fixed-point iteration strategy for one- and two-point test cases.
Fixed bugs in solution strategy that uses maximally dissipative sliding directions.
Cleaned up code.
Debugging principle of maximum dissipation (PMD) strategy. Working relatively well now, though the old step length calculator undershoots alpha, which causes the PMD strategy to take lots of intervals.
Implemented optimal step length search when using maximally dissipative sliding friction. Based on a handful of test cases, the principle of maximum dissipation does not seem to provide substantially different answers than the existing PLUS strategy.