Package org.ojalgo.optimisation.linear
Class LinearSolver.ModelIntegration
java.lang.Object
org.ojalgo.optimisation.ExpressionsBasedModel.Integration<LinearSolver>
org.ojalgo.optimisation.linear.LinearSolver.ModelIntegration
- All Implemented Interfaces:
Optimisation
,Optimisation.Integration<ExpressionsBasedModel,
LinearSolver>
- Enclosing class:
LinearSolver
public static final class LinearSolver.ModelIntegration
extends ExpressionsBasedModel.Integration<LinearSolver>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.ojalgo.optimisation.Optimisation
Optimisation.Constraint, Optimisation.ConstraintType, Optimisation.Integration<M extends Optimisation.Model,
S extends Optimisation.Solver>, Optimisation.Model, Optimisation.Objective, Optimisation.Options, Optimisation.ProblemStructure, Optimisation.Result, Optimisation.Sense, Optimisation.Solver, Optimisation.State -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild
(ExpressionsBasedModel model) An integration must be able to instantiate a solver that can handle (any) model instance.protected int
getIndexInSolver
(ExpressionsBasedModel model, Variable variable) boolean
isCapable
(ExpressionsBasedModel model) toModelState
(Optimisation.Result solverState, ExpressionsBasedModel model) Convert solver state to model state.toSolverState
(Optimisation.Result modelState, ExpressionsBasedModel model) Convert model state to solver state.Methods inherited from class org.ojalgo.optimisation.ExpressionsBasedModel.Integration
extractSolverState, isSwitch, newValidator, setSwitch, withCapabilityPredicate, withOptionsModifier
-
Constructor Details
-
ModelIntegration
public ModelIntegration()
-
-
Method Details
-
build
Description copied from interface:Optimisation.Integration
An integration must be able to instantiate a solver that can handle (any) model instance. -
isCapable
- Returns:
- true if this solver (integration) can handle the input model
-
toModelState
public Optimisation.Result toModelState(Optimisation.Result solverState, ExpressionsBasedModel model) Description copied from interface:Optimisation.Integration
Convert solver state to model state. Transforming the solution (set of variable values) is the main concern. Adjusting the objective function value (if needed) is best handled elsewhere, and is not required here.The required behaviour here depends on how
Optimisation.Integration.build(Optimisation.Model)
is implemented, and is the reverse mapping ofOptimisation.Integration.toSolverState(Optimisation.Result, Optimisation.Model)
.- Specified by:
toModelState
in interfaceOptimisation.Integration<ExpressionsBasedModel,
LinearSolver> - Overrides:
toModelState
in classExpressionsBasedModel.Integration<LinearSolver>
-
toSolverState
public Optimisation.Result toSolverState(Optimisation.Result modelState, ExpressionsBasedModel model) Description copied from interface:Optimisation.Integration
Convert model state to solver state. Transforming the solution (set of variable values) is the main concern. Adjusting the objective function value (if needed) is best handled elsewhere, and is not required here.The required behaviour here depends on how
Optimisation.Integration.build(Optimisation.Model)
is implemented, and is the reverse mapping ofOptimisation.Integration.toModelState(Result, Optimisation.Model)
.- Specified by:
toSolverState
in interfaceOptimisation.Integration<ExpressionsBasedModel,
LinearSolver> - Overrides:
toSolverState
in classExpressionsBasedModel.Integration<LinearSolver>
-
getIndexInSolver
- Overrides:
getIndexInSolver
in classExpressionsBasedModel.Integration<LinearSolver>
- Returns:
- The index with which one can reference parameters related to this variable in the solver.
-