SplitSolver class
Splits the equations into islands and solves them independently. Can improve performance.
Constructors
- SplitSolver(GSSolver subsolver)
Properties
-
equations
↔ List<
Equation> -
All equations to be solved
getter/setter pairinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- iterations ↔ int
-
The number of solver iterations determines quality of the constraints in the world.
The number of solver iterations determines quality of the constraints in the world. The more iterations, the more correct simulation. More iterations need more computations though. If you have a large gravity force in your world, you will need more iterations.
getter/setter pairinherited
-
nodePool
↔ List<
SplitSolverNode> -
getter/setter pair
-
nodes
↔ List<
SplitSolverNode> -
getter/setter pair
-
queue
↔ List<
SplitSolverNode> -
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
splitSolverSolveDummyWorld
↔ List<
Body> -
getter/setter pair
-
splitSolverSolveEqs
↔ List<
Equation> -
getter/setter pair
-
splitSolverSolveNodes
↔ List<
SplitSolverNode> -
getter/setter pair
- subsolver ↔ GSSolver
-
When tolerance is reached, the system is assumed to be converged.
subsolver
getter/setter pair
- tolerance ↔ double
-
getter/setter pairinherited
Methods
-
addEquation(
Equation eq) → void -
inherited
-
bfs(
SplitSolverNode root, void visitFunc(SplitSolverNode node, List< Body?> bds, List<Equation> eqs), List<Body?> bds, List<Equation> eqs) → void -
createNode(
) → SplitSolverNode -
getUnvisitedNode(
List< SplitSolverNode> nodes) → SplitSolverNode? -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
removeAllEquations(
) → void -
inherited
-
removeEquation(
Equation eq) → void -
inherited
-
solve(
double dt, World world) → int -
Solve the subsystems
@return number of iterations performed
override
-
sortById(
Equation a, Equation b) → int -
toString(
) → String -
A string representation of this object.
inherited
-
visitFunc(
SplitSolverNode node, List< Body?> bds, List<Equation> eqs) → void
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited