class org.apache.commons.math.linear.SymmLQ$State extends java.lang.Object
{
static final double CBRT_MACH_PREC;
static final double MACH_PREC;
private final org.apache.commons.math.linear.RealLinearOperator a;
private final org.apache.commons.math.linear.RealVector b;
private final boolean check;
private final double delta;
private double beta;
private double beta;
private double bstep;
private double cgnorm;
private double dbar;
private double gammaZeta;
private double gbar;
private double gmax;
private double gmin;
private final boolean goodb;
private boolean hasConverged;
private double lqnorm;
private final org.apache.commons.math.linear.RealLinearOperator m;
private double minusEpsZeta;
private final org.apache.commons.math.linear.RealVector mb;
private double oldb;
private org.apache.commons.math.linear.RealVector r;
private org.apache.commons.math.linear.RealVector r;
private double rnorm;
private final double shift;
private double snprod;
private double tnorm;
private org.apache.commons.math.linear.RealVector wbar;
private final org.apache.commons.math.linear.RealVector xL;
private org.apache.commons.math.linear.RealVector y;
private double ynorm;
private boolean bIsNull;
public void <init>(org.apache.commons.math.linear.RealLinearOperator, org.apache.commons.math.linear.RealLinearOperator, org.apache.commons.math.linear.RealVector, boolean, double, double, boolean)
{
org.apache.commons.math.linear.SymmLQ$State v;
org.apache.commons.math.linear.RealVector v, v;
int v;
org.apache.commons.math.linear.ArrayRealVector v;
org.apache.commons.math.linear.RealLinearOperator v, v;
boolean v, v;
double v, v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v := @parameter: org.apache.commons.math.linear.RealLinearOperator;
v := @parameter: org.apache.commons.math.linear.RealLinearOperator;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: boolean;
v := @parameter: double;
v := @parameter: double;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector b> = v;
v = new org.apache.commons.math.linear.ArrayRealVector;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: int getDimension()>();
specialinvoke v.<org.apache.commons.math.linear.ArrayRealVector: void <init>(int)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: boolean goodb> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: double shift> = v;
if v != null goto label;
v = v;
goto label;
label:
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
label:
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector mb> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: boolean hasConverged> = 0;
v.<org.apache.commons.math.linear.SymmLQ$State: boolean check> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: double delta> = v;
return;
}
private static void checkSymmetry(org.apache.commons.math.linear.RealLinearOperator, org.apache.commons.math.linear.RealVector, org.apache.commons.math.linear.RealVector, org.apache.commons.math.linear.RealVector) throws org.apache.commons.math.linear.NonSelfAdjointOperatorException
{
java.lang.Double v;
org.apache.commons.math.linear.NonSelfAdjointOperatorException v;
org.apache.commons.math.linear.RealVector v, v, v;
byte v;
double v, v, v, v, v, v, v, v;
org.apache.commons.math.exception.util.ExceptionContext v;
org.apache.commons.math.linear.RealLinearOperator v;
v := @parameter: org.apache.commons.math.linear.RealLinearOperator;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: org.apache.commons.math.linear.RealVector;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v + v;
v = <org.apache.commons.math.linear.SymmLQ$State: double CBRT_MACH_PREC>;
v = v * v;
v = v - v;
v = staticinvoke <org.apache.commons.math.util.FastMath: double abs(double)>(v);
v = v cmpl v;
if v <= 0 goto label;
v = new org.apache.commons.math.linear.NonSelfAdjointOperatorException;
specialinvoke v.<org.apache.commons.math.linear.NonSelfAdjointOperatorException: void <init>()>();
v = virtualinvoke v.<org.apache.commons.math.linear.NonSelfAdjointOperatorException: org.apache.commons.math.exception.util.ExceptionContext getContext()>();
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("operator", v);
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("vector1", v);
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("vector2", v);
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(v);
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("threshold", v);
throw v;
label:
return;
}
private static void throwNPDLOException(org.apache.commons.math.linear.RealLinearOperator, org.apache.commons.math.linear.RealVector) throws org.apache.commons.math.linear.NonPositiveDefiniteOperatorException
{
org.apache.commons.math.exception.util.ExceptionContext v;
org.apache.commons.math.linear.RealVector v;
org.apache.commons.math.linear.RealLinearOperator v;
org.apache.commons.math.linear.NonPositiveDefiniteOperatorException v;
v := @parameter: org.apache.commons.math.linear.RealLinearOperator;
v := @parameter: org.apache.commons.math.linear.RealVector;
v = new org.apache.commons.math.linear.NonPositiveDefiniteOperatorException;
specialinvoke v.<org.apache.commons.math.linear.NonPositiveDefiniteOperatorException: void <init>()>();
v = virtualinvoke v.<org.apache.commons.math.linear.NonPositiveDefiniteOperatorException: org.apache.commons.math.exception.util.ExceptionContext getContext()>();
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("operator", v);
virtualinvoke v.<org.apache.commons.math.exception.util.ExceptionContext: void setValue(java.lang.String,java.lang.Object)>("vector", v);
throw v;
}
private static void daxpy(double, org.apache.commons.math.linear.RealVector, org.apache.commons.math.linear.RealVector)
{
org.apache.commons.math.linear.RealVector v, v;
int v, v;
double v, v, v, v, v;
v := @parameter: double;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: org.apache.commons.math.linear.RealVector;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: int getDimension()>();
v = 0;
label:
if v >= v goto label;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
return;
}
private static void daxpbypz(double, org.apache.commons.math.linear.RealVector, double, org.apache.commons.math.linear.RealVector, org.apache.commons.math.linear.RealVector)
{
org.apache.commons.math.linear.RealVector v, v, v;
int v, v;
double v, v, v, v, v, v, v, v, v;
v := @parameter: double;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: double;
v := @parameter: org.apache.commons.math.linear.RealVector;
v := @parameter: org.apache.commons.math.linear.RealVector;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: int getDimension()>();
v = 0;
label:
if v >= v goto label;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = v + v;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
return;
}
void refineSolution(org.apache.commons.math.linear.RealVector)
{
org.apache.commons.math.linear.RealVector v, v, v, v, v, v, v, v, v, v;
byte v, v;
boolean v, v;
int v, v, v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v := @parameter: org.apache.commons.math.linear.RealVector;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: int getDimension()>();
v = v.<org.apache.commons.math.linear.SymmLQ$State: double lqnorm>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm>;
v = v cmpg v;
if v >= 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean goodb>;
if v != 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setSubVector(int,org.apache.commons.math.linear.RealVector)>(0, v);
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double bstep>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v / v;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector mb>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double tnorm>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
v = v cmpl 0.0;
if v != 0 goto label;
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v * v;
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double bstep>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double snprod>;
v = v * v;
v = v + v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean goodb>;
if v != 0 goto label;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector mb>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v * v;
v = v + v;
v = v * v;
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
return;
}
void init()
{
org.apache.commons.math.linear.RealVector v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
byte v, v, v;
org.apache.commons.math.linear.ArrayRealVector v;
boolean v, v, v;
org.apache.commons.math.linear.RealLinearOperator v, v, v, v, v, v, v, v, v, v, v, v, v;
int v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void set(double)>(0.0);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector b>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: org.apache.commons.math.linear.RealVector copy()>();
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
if v != null goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector b>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: org.apache.commons.math.linear.RealVector copy()>();
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
label:
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
if v == null goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean check>;
if v == 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void checkSymmetry(org.apache.commons.math.linear.RealLinearOperator,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v, v);
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta1> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v cmpg 0.0;
if v >= 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void throwNPDLOException(org.apache.commons.math.linear.RealLinearOperator,org.apache.commons.math.linear.RealVector)>(v, v);
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v cmpl 0.0;
if v != 0 goto label;
v.<org.apache.commons.math.linear.SymmLQ$State: boolean bIsNull> = 1;
return;
label:
v.<org.apache.commons.math.linear.SymmLQ$State: boolean bIsNull> = 0;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta1> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = 1.0 / v;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: org.apache.commons.math.linear.RealVector mapMultiply(double)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean check>;
if v == 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void checkSymmetry(org.apache.commons.math.linear.RealLinearOperator,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v, v);
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double shift>;
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void daxpy(double,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void daxpy(double,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = neg v;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void daxpy(double,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: org.apache.commons.math.linear.RealVector copy()>();
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
if v == null goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y> = v;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v.<org.apache.commons.math.linear.SymmLQ$State: double oldb> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v cmpg 0.0;
if v >= 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void throwNPDLOException(org.apache.commons.math.linear.RealLinearOperator,org.apache.commons.math.linear.RealVector)>(v, v);
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: double gbar> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v.<org.apache.commons.math.linear.SymmLQ$State: double dbar> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: double minusEpsZeta> = 0.0;
v.<org.apache.commons.math.linear.SymmLQ$State: double bstep> = 0.0;
v.<org.apache.commons.math.linear.SymmLQ$State: double snprod> = 1.0;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v * v;
v = v + v;
v.<org.apache.commons.math.linear.SymmLQ$State: double tnorm> = v;
v.<org.apache.commons.math.linear.SymmLQ$State: double ynorm2> = 0.0;
v = staticinvoke <org.apache.commons.math.util.FastMath: double abs(double)>(v);
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v + v;
v.<org.apache.commons.math.linear.SymmLQ$State: double gmax> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmax>;
v.<org.apache.commons.math.linear.SymmLQ$State: double gmin> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean goodb>;
if v == 0 goto label;
v = new org.apache.commons.math.linear.ArrayRealVector;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: int getRowDimension()>();
specialinvoke v.<org.apache.commons.math.linear.ArrayRealVector: void <init>(int)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar>;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void set(double)>(0.0);
goto label;
label:
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar> = v;
label:
specialinvoke v.<org.apache.commons.math.linear.SymmLQ$State: void updateNorms()>();
return;
}
void update()
{
org.apache.commons.math.linear.RealVector v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
byte v;
org.apache.commons.math.linear.RealLinearOperator v, v, v, v;
int v, v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = 1.0 / v;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: org.apache.commons.math.linear.RealVector mapMultiply(double)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator a>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double shift>;
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void daxpbypz(double,org.apache.commons.math.linear.RealVector,double,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v, v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void daxpy(double,org.apache.commons.math.linear.RealVector,org.apache.commons.math.linear.RealVector)>(v, v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r1> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
if v == null goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealLinearOperator: org.apache.commons.math.linear.RealVector operate(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y> = v;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v.<org.apache.commons.math.linear.SymmLQ$State: double oldb> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector r2>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double dotProduct(org.apache.commons.math.linear.RealVector)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v cmpg 0.0;
if v >= 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealLinearOperator m>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector y>;
staticinvoke <org.apache.commons.math.linear.SymmLQ$State: void throwNPDLOException(org.apache.commons.math.linear.RealLinearOperator,org.apache.commons.math.linear.RealVector)>(v, v);
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double beta> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double tnorm>;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v * v;
v = v + v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v * v;
v = v + v;
v = v + v;
v.<org.apache.commons.math.linear.SymmLQ$State: double tnorm> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v * v;
v = v + v;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double oldb>;
v = v / v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double dbar>;
v = v * v;
v = v * v;
v = v + v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double dbar>;
v = v * v;
v = v * v;
v = v - v;
v.<org.apache.commons.math.linear.SymmLQ$State: double gbar> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v * v;
v = neg v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v * v;
v.<org.apache.commons.math.linear.SymmLQ$State: double dbar> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta>;
v = v / v;
v = v * v;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: int getDimension()>();
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar>;
v = virtualinvoke v.<org.apache.commons.math.linear.RealVector: double getEntry(int)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector xL>;
v = v * v;
v = v + v;
v = v * v;
v = v + v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: org.apache.commons.math.linear.RealVector wbar>;
v = v * v;
v = v * v;
v = v - v;
virtualinvoke v.<org.apache.commons.math.linear.RealVector: void setEntry(int,double)>(v, v);
v = v + 1;
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double bstep>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double snprod>;
v = v * v;
v = v * v;
v = v + v;
v.<org.apache.commons.math.linear.SymmLQ$State: double bstep> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double snprod>;
v = v * v;
v.<org.apache.commons.math.linear.SymmLQ$State: double snprod> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmax>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double max(double,double)>(v, v);
v.<org.apache.commons.math.linear.SymmLQ$State: double gmax> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmin>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double min(double,double)>(v, v);
v.<org.apache.commons.math.linear.SymmLQ$State: double gmin> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double ynorm2>;
v = v * v;
v = v + v;
v.<org.apache.commons.math.linear.SymmLQ$State: double ynorm2> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double minusEpsZeta>;
v = v * v;
v = v - v;
v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta> = v;
v = neg v;
v = v * v;
v.<org.apache.commons.math.linear.SymmLQ$State: double minusEpsZeta> = v;
specialinvoke v.<org.apache.commons.math.linear.SymmLQ$State: void updateNorms()>();
return;
}
private void updateNorms()
{
byte v, v, v, v, v, v;
boolean v;
org.apache.commons.math.linear.SingularOperatorException v;
double v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.commons.math.linear.IllConditionedOperatorException v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double tnorm>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = v.<org.apache.commons.math.linear.SymmLQ$State: double ynorm2>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v * v;
v = v * v;
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v * v;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double delta>;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
v = v cmpl 0.0;
if v != 0 goto label;
v = v;
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gbar>;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gammaZeta>;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double minusEpsZeta>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double minusEpsZeta>;
v = v * v;
v = v + v;
v = staticinvoke <org.apache.commons.math.util.FastMath: double sqrt(double)>(v);
v.<org.apache.commons.math.linear.SymmLQ$State: double lqnorm> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double snprod>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v * v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = v * v;
v = staticinvoke <org.apache.commons.math.util.FastMath: double abs(double)>(v);
v = v / v;
v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double lqnorm>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm>;
v = v cmpg v;
if v > 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmax>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmin>;
v = v / v;
goto label;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmax>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double gmin>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double abs(double)>(v);
v = staticinvoke <org.apache.commons.math.util.FastMath: double min(double,double)>(v, v);
v = v / v;
label:
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v * v;
v = v cmpl 0.1;
if v < 0 goto label;
v = new org.apache.commons.math.linear.IllConditionedOperatorException;
specialinvoke v.<org.apache.commons.math.linear.IllConditionedOperatorException: void <init>(double)>(v);
throw v;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta1>;
v = v cmpg v;
if v > 0 goto label;
v = new org.apache.commons.math.linear.SingularOperatorException;
specialinvoke v.<org.apache.commons.math.linear.SingularOperatorException: void <init>()>();
throw v;
label:
v = v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm>;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double lqnorm>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double min(double,double)>(v, v);
v.<org.apache.commons.math.linear.SymmLQ$State: double rnorm> = v;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm>;
v = v cmpg v;
if v <= 0 goto label;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double cgnorm>;
v = v cmpg v;
if v > 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
v.<org.apache.commons.math.linear.SymmLQ$State: boolean hasConverged> = v;
return;
}
boolean hasConverged()
{
boolean v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean hasConverged>;
return v;
}
boolean bEqualsNullVector()
{
boolean v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: boolean bIsNull>;
return v;
}
boolean betaEqualsZero()
{
byte v;
org.apache.commons.math.linear.SymmLQ$State v;
boolean v;
double v, v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double beta>;
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = v cmpg v;
if v >= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
double getNormOfResidual()
{
double v;
org.apache.commons.math.linear.SymmLQ$State v;
v := @this: org.apache.commons.math.linear.SymmLQ$State;
v = v.<org.apache.commons.math.linear.SymmLQ$State: double rnorm>;
return v;
}
static void <clinit>()
{
double v, v, v;
v = staticinvoke <org.apache.commons.math.util.FastMath: double ulp(double)>(1.0);
<org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC> = v;
v = <org.apache.commons.math.linear.SymmLQ$State: double MACH_PREC>;
v = staticinvoke <org.apache.commons.math.util.FastMath: double cbrt(double)>(v);
<org.apache.commons.math.linear.SymmLQ$State: double CBRT_MACH_PREC> = v;
return;
}
}