public class org.apache.commons.math3.optim.linear.SimplexSolver extends org.apache.commons.math3.optim.linear.LinearOptimizer
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.optim.linear.SimplexSolver
super_class: org.apache.commons.math3.optim.linear.LinearOptimizer
{
static final int DEFAULT_ULPS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 10
static final double DEFAULT_CUT_OFF;
descriptor: D
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E-10
private static final double DEFAULT_EPSILON;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E-6
private final double epsilon;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int maxUlps;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double cutOff;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.apache.commons.math3.optim.linear.PivotSelectionRule pivotSelection;
descriptor: Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
flags: (0x0002) ACC_PRIVATE
private org.apache.commons.math3.optim.linear.SolutionCallback solutionCallback;
descriptor: Lorg/apache/commons/math3/optim/linear/SolutionCallback;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc 1.0E-6
bipush 10
ldc 1.0E-10
invokespecial org.apache.commons.math3.optim.linear.SimplexSolver.<init>:(DID)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
public void <init>(double);
descriptor: (D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dload 1
bipush 10
ldc 1.0E-10
invokespecial org.apache.commons.math3.optim.linear.SimplexSolver.<init>:(DID)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 2 1 epsilon D
MethodParameters:
Name Flags
epsilon final
public void <init>(double, int);
descriptor: (DI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
dload 1
iload 3
ldc 1.0E-10
invokespecial org.apache.commons.math3.optim.linear.SimplexSolver.<init>:(DID)V
1: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 2 1 epsilon D
0 2 3 maxUlps I
MethodParameters:
Name Flags
epsilon final
maxUlps final
public void <init>(double, int, double);
descriptor: (DID)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
invokespecial org.apache.commons.math3.optim.linear.LinearOptimizer.<init>:()V
1: aload 0
dload 1
putfield org.apache.commons.math3.optim.linear.SimplexSolver.epsilon:D
2: aload 0
iload 3
putfield org.apache.commons.math3.optim.linear.SimplexSolver.maxUlps:I
3: aload 0
dload 4
putfield org.apache.commons.math3.optim.linear.SimplexSolver.cutOff:D
4: aload 0
getstatic org.apache.commons.math3.optim.linear.PivotSelectionRule.DANTZIG:Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
putfield org.apache.commons.math3.optim.linear.SimplexSolver.pivotSelection:Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
5: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 6 1 epsilon D
0 6 3 maxUlps I
0 6 4 cutOff D
MethodParameters:
Name Flags
epsilon final
maxUlps final
cutOff final
public org.apache.commons.math3.optim.PointValuePair optimize(org.apache.commons.math3.optim.OptimizationData[]);
descriptor: ([Lorg/apache/commons/math3/optim/OptimizationData;)Lorg/apache/commons/math3/optim/PointValuePair;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.apache.commons.math3.optim.linear.LinearOptimizer.optimize:([Lorg/apache/commons/math3/optim/OptimizationData;)Lorg/apache/commons/math3/optim/PointValuePair;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 1 1 optData [Lorg/apache/commons/math3/optim/OptimizationData;
Exceptions:
throws org.apache.commons.math3.exception.TooManyIterationsException
MethodParameters:
Name Flags
optData
protected void parseOptimizationData(org.apache.commons.math3.optim.OptimizationData[]);
descriptor: ([Lorg/apache/commons/math3/optim/OptimizationData;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.apache.commons.math3.optim.linear.LinearOptimizer.parseOptimizationData:([Lorg/apache/commons/math3/optim/OptimizationData;)V
1: aload 0
aconst_null
putfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
2: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 10
StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.OptimizationData[] top int int org.apache.commons.math3.optim.OptimizationData[]
StackMap stack:
3: aload 5
iload 3
aaload
astore 2
start local 2 4: aload 2
instanceof org.apache.commons.math3.optim.linear.SolutionCallback
ifeq 7
5: aload 0
aload 2
checkcast org.apache.commons.math3.optim.linear.SolutionCallback
putfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
6: goto 9
7: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.OptimizationData[] org.apache.commons.math3.optim.OptimizationData int int org.apache.commons.math3.optim.OptimizationData[]
StackMap stack:
aload 2
instanceof org.apache.commons.math3.optim.linear.PivotSelectionRule
ifeq 9
8: aload 0
aload 2
checkcast org.apache.commons.math3.optim.linear.PivotSelectionRule
putfield org.apache.commons.math3.optim.linear.SimplexSolver.pivotSelection:Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
end local 2 9: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.OptimizationData[] top int int org.apache.commons.math3.optim.OptimizationData[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
iload 4
if_icmplt 3
11: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 12 1 optData [Lorg/apache/commons/math3/optim/OptimizationData;
4 9 2 data Lorg/apache/commons/math3/optim/OptimizationData;
MethodParameters:
Name Flags
optData
private java.lang.Integer getPivotColumn(org.apache.commons.math3.optim.linear.SimplexTableau);
descriptor: (Lorg/apache/commons/math3/optim/linear/SimplexTableau;)Ljava/lang/Integer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: dconst_0
dstore 2
start local 2 1: aconst_null
astore 4
start local 4 2: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumObjectiveFunctions:()I
istore 5
start local 5 3: goto 11
4: StackMap locals: double java.lang.Integer int
StackMap stack:
aload 1
iconst_0
iload 5
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dstore 6
start local 6 5: dload 6
dload 2
dcmpg
ifge 10
6: dload 6
dstore 2
7: iload 5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 4
8: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.pivotSelection:Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
getstatic org.apache.commons.math3.optim.linear.PivotSelectionRule.BLAND:Lorg/apache/commons/math3/optim/linear/PivotSelectionRule;
if_acmpne 10
aload 0
aload 1
iload 5
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.isValidPivotColumn:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;I)Z
ifeq 10
9: goto 12
end local 6 10: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
11: iload 5
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getWidth:()I
iconst_1
isub
if_icmplt 4
end local 5 12: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 13 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
1 13 2 minValue D
2 13 4 minPos Ljava/lang/Integer;
3 12 5 i I
5 10 6 entry D
MethodParameters:
Name Flags
tableau
private boolean isValidPivotColumn(org.apache.commons.math3.optim.linear.SimplexTableau, int);
descriptor: (Lorg/apache/commons/math3/optim/linear/SimplexTableau;I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumObjectiveFunctions:()I
istore 3
start local 3 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
iload 2
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dstore 4
start local 4 3: dload 4
dconst_0
aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.cutOff:D
invokestatic org.apache.commons.math3.util.Precision.compareTo:(DDD)I
ifle 5
4: iconst_1
ireturn
end local 4 5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getHeight:()I
if_icmplt 2
end local 3 7: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 8 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
0 8 2 col I
1 7 3 i I
3 5 4 entry D
MethodParameters:
Name Flags
tableau
col
private java.lang.Integer getPivotRow(org.apache.commons.math3.optim.linear.SimplexTableau, int);
descriptor: (Lorg/apache/commons/math3/optim/linear/SimplexTableau;I)Ljava/lang/Integer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=14, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 1: ldc 1.7976931348623157E308
dstore 4
start local 4 2: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumObjectiveFunctions:()I
istore 6
start local 6 3: goto 17
4: StackMap locals: java.util.List double int
StackMap stack:
aload 1
iload 6
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getWidth:()I
iconst_1
isub
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dstore 7
start local 7 5: aload 1
iload 6
iload 2
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dstore 9
start local 9 6: dload 9
dconst_0
aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.cutOff:D
invokestatic org.apache.commons.math3.util.Precision.compareTo:(DDD)I
ifle 16
7: dload 7
dload 9
ddiv
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
dstore 11
start local 11 8: dload 11
dload 4
invokestatic java.lang.Double.compare:(DD)I
istore 13
start local 13 9: iload 13
ifne 12
10: aload 3
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: goto 16
StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double int double double double int
StackMap stack:
12: iload 13
ifge 16
13: dload 11
dstore 4
14: aload 3
invokeinterface java.util.List.clear:()V
15: aload 3
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 13 end local 11 end local 9 end local 7 16: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double int
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
17: iload 6
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getHeight:()I
if_icmplt 4
end local 6 18: aload 3
invokeinterface java.util.List.size:()I
ifne 20
19: aconst_null
areturn
20: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 43
21: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumArtificialVariables:()I
ifle 33
22: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 32
StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double top java.util.Iterator
StackMap stack:
23: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 6
start local 6 24: iconst_0
istore 8
start local 8 25: goto 31
26: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double java.lang.Integer java.util.Iterator int
StackMap stack:
iload 8
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getArtificialVariableOffset:()I
iadd
istore 9
start local 9 27: aload 1
aload 6
invokevirtual java.lang.Integer.intValue:()I
iload 9
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dstore 10
start local 10 28: dload 10
dconst_1
aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.maxUlps:I
invokestatic org.apache.commons.math3.util.Precision.equals:(DDI)Z
ifeq 30
aload 6
aload 1
iload 9
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getBasicRow:(I)Ljava/lang/Integer;
invokevirtual java.lang.Integer.equals:(Ljava/lang/Object;)Z
ifeq 30
29: aload 6
areturn
end local 10 end local 9 30: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
31: iload 8
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumArtificialVariables:()I
if_icmplt 26
end local 8 end local 6 32: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
33: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double
StackMap stack:
aconst_null
astore 6
start local 6 34: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getWidth:()I
istore 7
start local 7 35: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 41
StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double java.lang.Integer int top java.util.Iterator
StackMap stack:
36: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 8
start local 8 37: aload 1
aload 8
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getBasicVariable:(I)I
istore 10
start local 10 38: iload 10
iload 7
if_icmpge 41
39: iload 10
istore 7
40: aload 8
astore 6
end local 10 end local 8 41: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
42: aload 6
areturn
end local 7 end local 6 43: StackMap locals: org.apache.commons.math3.optim.linear.SimplexSolver org.apache.commons.math3.optim.linear.SimplexTableau int java.util.List double
StackMap stack:
aload 3
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Integer
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 44 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
0 44 2 col I
1 44 3 minRatioPositions Ljava/util/List<Ljava/lang/Integer;>;
2 44 4 minRatio D
3 18 6 i I
5 16 7 rhs D
6 16 9 entry D
8 16 11 ratio D
9 16 13 cmp I
24 32 6 row Ljava/lang/Integer;
25 32 8 i I
27 30 9 column I
28 30 10 entry D
34 43 6 minRow Ljava/lang/Integer;
35 43 7 minIndex I
37 41 8 row Ljava/lang/Integer;
38 41 10 basicVar I
MethodParameters:
Name Flags
tableau
col final
protected void doIteration(org.apache.commons.math3.optim.linear.SimplexTableau);
descriptor: (Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.incrementIterationCount:()V
1: aload 0
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.getPivotColumn:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)Ljava/lang/Integer;
astore 2
start local 2 2: aload 0
aload 1
aload 2
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.getPivotRow:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;I)Ljava/lang/Integer;
astore 3
start local 3 3: aload 3
ifnonnull 5
4: new org.apache.commons.math3.optim.linear.UnboundedSolutionException
dup
invokespecial org.apache.commons.math3.optim.linear.UnboundedSolutionException.<init>:()V
athrow
5: StackMap locals: java.lang.Integer java.lang.Integer
StackMap stack:
aload 1
aload 2
invokevirtual java.lang.Integer.intValue:()I
aload 3
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.performRowOperations:(II)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 7 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
2 7 2 pivotCol Ljava/lang/Integer;
3 7 3 pivotRow Ljava/lang/Integer;
Exceptions:
throws org.apache.commons.math3.exception.TooManyIterationsException, org.apache.commons.math3.optim.linear.UnboundedSolutionException
MethodParameters:
Name Flags
tableau final
protected void solvePhase1(org.apache.commons.math3.optim.linear.SimplexTableau);
descriptor: (Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getNumArtificialVariables:()I
ifne 3
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.doIteration:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.isOptimal:()Z
ifeq 2
4: aload 1
iconst_0
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getRhsOffset:()I
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getEntry:(II)D
dconst_0
aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.epsilon:D
invokestatic org.apache.commons.math3.util.Precision.equals:(DDD)Z
ifne 6
5: new org.apache.commons.math3.optim.linear.NoFeasibleSolutionException
dup
invokespecial org.apache.commons.math3.optim.linear.NoFeasibleSolutionException.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
0 7 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
Exceptions:
throws org.apache.commons.math3.exception.TooManyIterationsException, org.apache.commons.math3.optim.linear.UnboundedSolutionException, org.apache.commons.math3.optim.linear.NoFeasibleSolutionException
MethodParameters:
Name Flags
tableau final
public org.apache.commons.math3.optim.PointValuePair doOptimize();
descriptor: ()Lorg/apache/commons/math3/optim/PointValuePair;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=5, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
ifnull 2
1: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
aconst_null
invokevirtual org.apache.commons.math3.optim.linear.SolutionCallback.setTableau:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
2: StackMap locals:
StackMap stack:
new org.apache.commons.math3.optim.linear.SimplexTableau
dup
aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.getFunction:()Lorg/apache/commons/math3/optim/linear/LinearObjectiveFunction;
3: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.getConstraints:()Ljava/util/Collection;
4: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.getGoalType:()Lorg/apache/commons/math3/optim/nonlinear/scalar/GoalType;
5: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.isRestrictedToNonNegative:()Z
6: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.epsilon:D
7: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.maxUlps:I
8: invokespecial org.apache.commons.math3.optim.linear.SimplexTableau.<init>:(Lorg/apache/commons/math3/optim/linear/LinearObjectiveFunction;Ljava/util/Collection;Lorg/apache/commons/math3/optim/nonlinear/scalar/GoalType;ZDI)V
9: astore 1
start local 1 10: aload 0
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.solvePhase1:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
11: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.dropPhase1Objective:()V
12: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
ifnull 16
13: aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.solutionCallback:Lorg/apache/commons/math3/optim/linear/SolutionCallback;
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SolutionCallback.setTableau:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
14: goto 16
15: StackMap locals: org.apache.commons.math3.optim.linear.SimplexTableau
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.doIteration:(Lorg/apache/commons/math3/optim/linear/SimplexTableau;)V
16: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.isOptimal:()Z
ifeq 15
17: aload 1
invokevirtual org.apache.commons.math3.optim.linear.SimplexTableau.getSolution:()Lorg/apache/commons/math3/optim/PointValuePair;
astore 2
start local 2 18: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.isRestrictedToNonNegative:()Z
ifeq 26
19: aload 2
invokevirtual org.apache.commons.math3.optim.PointValuePair.getPoint:()[D
astore 3
start local 3 20: iconst_0
istore 4
start local 4 21: goto 25
22: StackMap locals: org.apache.commons.math3.optim.PointValuePair double[] int
StackMap stack:
aload 3
iload 4
daload
dconst_0
aload 0
getfield org.apache.commons.math3.optim.linear.SimplexSolver.epsilon:D
invokestatic org.apache.commons.math3.util.Precision.compareTo:(DDD)I
ifge 24
23: new org.apache.commons.math3.optim.linear.NoFeasibleSolutionException
dup
invokespecial org.apache.commons.math3.optim.linear.NoFeasibleSolutionException.<init>:()V
athrow
24: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
25: iload 4
aload 3
arraylength
if_icmplt 22
end local 4 end local 3 26: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/apache/commons/math3/optim/linear/SimplexSolver;
10 27 1 tableau Lorg/apache/commons/math3/optim/linear/SimplexTableau;
18 27 2 solution Lorg/apache/commons/math3/optim/PointValuePair;
20 26 3 coeff [D
21 26 4 i I
Exceptions:
throws org.apache.commons.math3.exception.TooManyIterationsException, org.apache.commons.math3.optim.linear.UnboundedSolutionException, org.apache.commons.math3.optim.linear.NoFeasibleSolutionException
public java.lang.Object doOptimize();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.apache.commons.math3.optim.linear.SimplexSolver.doOptimize:()Lorg/apache/commons/math3/optim/PointValuePair;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "SimplexSolver.java"