JunoOldSolver.mesa (was OldJunoSolver.mesa)
Last edited by Stolfi, May 31, 1984 5:02:56 pm PDT

DIRECTORY

JunoStorage USING [ConstrList];

JunoOldSolver: DEFINITIONS =

BEGIN

OPEN Stor: JunoStorage;

displayingMotions: BOOLEAN;
If set to TRUE, Solve will show the point displacements for each iteration.

Outcome: TYPE = {false, uncertain, true};

Solve: PROC[constrs: Stor.ConstrList, eps: REAL] RETURNS [outcome: Outcome];

Moves the points occurring in the given constraints until the latter are all satisfied (outcome=true), or it becomes clear that they are unsatisfiable (outcome=false), or the procedure gets tired of working on the problem (outcome=uncertain).

If outcome=uncertain, it means that the solver went through some fixed number (20) of Newton steps without finding a placement of the unknown points satisfying all constraints. This could mean that the constraints are unstatisfiable, that they are satisfiable but convergence is too slow, or simply that the solver was out of luck.

Points with p.fixed = TRUE on entry will be treated as constants, and will not be moved.

END.
Last edited by Stolfi, March 7, 1984 2:47:10 am PST
Tioga formatting, name change