public static void shseqr( String paramString1, String paramString2, int paramInt1, int paramInt2, int paramInt3, float[] paramArrayOfFloat1, int paramInt4, int paramInt5, float[] paramArrayOfFloat2, int paramInt6, float[] paramArrayOfFloat3, int paramInt7, float[] paramArrayOfFloat4, int paramInt8, int paramInt9, float[] paramArrayOfFloat5, int paramInt10, int paramInt11, intW paramintW) { float[] arrayOfFloat1 = new float[49 * 49]; float[] arrayOfFloat2 = new float[49]; int i = 0; int j = 0; int k = 0; boolean bool1 = false; int m = 0; boolean bool2 = false; boolean bool3 = false; bool2 = Lsame.lsame(paramString1, "S"); bool1 = Lsame.lsame(paramString2, "I"); bool3 = (bool1) || (Lsame.lsame(paramString2, "V")); paramArrayOfFloat5[(1 - 1 + paramInt10)] = Math.max(1, paramInt1); m = paramInt11 != -1 ? 0 : 1; paramintW.val = 0; if ((((Lsame.lsame(paramString1, "E") ^ true)) && ((bool2 ^ true)) ? 1 : 0) != 0) { paramintW.val = -1; } else if ((((Lsame.lsame(paramString2, "N") ^ true)) && ((bool3 ^ true)) ? 1 : 0) != 0) { paramintW.val = -2; } else if ((paramInt1 >= 0 ? 0 : 1) != 0) { paramintW.val = -3; } else { if ((paramInt2 >= 1 ? 0 : 1) == 0) {} if (((paramInt2 <= Math.max(1, paramInt1) ? 0 : 1) == 0 ? 0 : 1) != 0) { paramintW.val = -4; } else { if ((paramInt3 >= Math.min(paramInt2, paramInt1) ? 0 : 1) == 0) {} if (((paramInt3 <= paramInt1 ? 0 : 1) == 0 ? 0 : 1) != 0) { paramintW.val = -5; } else if ((paramInt5 >= Math.max(1, paramInt1) ? 0 : 1) != 0) { paramintW.val = -7; } else { if ((paramInt9 >= 1 ? 0 : 1) == 0) { if (!bool3) {} } if ((((paramInt9 >= Math.max(1, paramInt1) ? 0 : 1) != 0 ? 1 : 0) == 0 ? 0 : 1) != 0) { paramintW.val = -11; } else { if ((paramInt11 >= Math.max(1, paramInt1) ? 0 : 1) != 0) {} if (((m ^ 0x1) != 0 ? 1 : 0) != 0) { paramintW.val = -13; } } } } } if ((paramintW.val == 0 ? 0 : 1) != 0) { Xerbla.xerbla("SHSEQR", -paramintW.val); return; } if ((paramInt1 != 0 ? 0 : 1) != 0) { return; } if (m != 0) { Slaqr0.slaqr0( bool2, bool3, paramInt1, paramInt2, paramInt3, paramArrayOfFloat1, paramInt4, paramInt5, paramArrayOfFloat2, paramInt6, paramArrayOfFloat3, paramInt7, paramInt2, paramInt3, paramArrayOfFloat4, paramInt8, paramInt9, paramArrayOfFloat5, paramInt10, paramInt11, paramintW); paramArrayOfFloat5[(1 - 1 + paramInt10)] = Math.max(Math.max(1, paramInt1), paramArrayOfFloat5[(1 - 1 + paramInt10)]); return; } i = 1; for (int n = paramInt2 - 1 - 1 + 1; n > 0; n--) { paramArrayOfFloat2[(i - 1 + paramInt6)] = paramArrayOfFloat1[(i - 1 + (i - 1) * paramInt5 + paramInt4)]; paramArrayOfFloat3[(i - 1 + paramInt7)] = 0.0F; i += 1; } i = paramInt3 + 1; for (n = paramInt1 - (paramInt3 + 1) + 1; n > 0; n--) { paramArrayOfFloat2[(i - 1 + paramInt6)] = paramArrayOfFloat1[(i - 1 + (i - 1) * paramInt5 + paramInt4)]; paramArrayOfFloat3[(i - 1 + paramInt7)] = 0.0F; i += 1; } if (bool1) { Slaset.slaset( "A", paramInt1, paramInt1, 0.0F, 1.0F, paramArrayOfFloat4, paramInt8, paramInt9); } if ((paramInt2 != paramInt3 ? 0 : 1) != 0) { paramArrayOfFloat2[(paramInt2 - 1 + paramInt6)] = paramArrayOfFloat1[(paramInt2 - 1 + (paramInt2 - 1) * paramInt5 + paramInt4)]; paramArrayOfFloat3[(paramInt2 - 1 + paramInt7)] = 0.0F; return; } k = Ilaenv.ilaenv( 1, "SHSEQR", paramString1.substring(1 + -1, 1) + paramString2.substring(1 + -1, 1), paramInt1, paramInt2, paramInt3, paramInt11); k = Math.max(11, k); if ((paramInt1 <= k ? 0 : 1) != 0) { Slaqr0.slaqr0( bool2, bool3, paramInt1, paramInt2, paramInt3, paramArrayOfFloat1, paramInt4, paramInt5, paramArrayOfFloat2, paramInt6, paramArrayOfFloat3, paramInt7, paramInt2, paramInt3, paramArrayOfFloat4, paramInt8, paramInt9, paramArrayOfFloat5, paramInt10, paramInt11, paramintW); } else { Slahqr.slahqr( bool2, bool3, paramInt1, paramInt2, paramInt3, paramArrayOfFloat1, paramInt4, paramInt5, paramArrayOfFloat2, paramInt6, paramArrayOfFloat3, paramInt7, paramInt2, paramInt3, paramArrayOfFloat4, paramInt8, paramInt9, paramintW); if ((paramintW.val <= 0 ? 0 : 1) != 0) { j = paramintW.val; if ((paramInt1 < 49 ? 0 : 1) != 0) { Slaqr0.slaqr0( bool2, bool3, paramInt1, paramInt2, j, paramArrayOfFloat1, paramInt4, paramInt5, paramArrayOfFloat2, paramInt6, paramArrayOfFloat3, paramInt7, paramInt2, paramInt3, paramArrayOfFloat4, paramInt8, paramInt9, paramArrayOfFloat5, paramInt10, paramInt11, paramintW); } else { Slacpy.slacpy( "A", paramInt1, paramInt1, paramArrayOfFloat1, paramInt4, paramInt5, arrayOfFloat1, 0, 49); arrayOfFloat1[(paramInt1 + 1 - 1 + (paramInt1 - 1) * 49)] = 0.0F; Slaset.slaset( "A", 49, 49 - paramInt1, 0.0F, 0.0F, arrayOfFloat1, 1 - 1 + (paramInt1 + 1 - 1) * 49, 49); Slaqr0.slaqr0( bool2, bool3, 49, paramInt2, j, arrayOfFloat1, 0, 49, paramArrayOfFloat2, paramInt6, paramArrayOfFloat3, paramInt7, paramInt2, paramInt3, paramArrayOfFloat4, paramInt8, paramInt9, arrayOfFloat2, 0, 49, paramintW); if (!bool2) {} if (((paramintW.val == 0 ? 0 : 1) == 0 ? 0 : 1) != 0) { Slacpy.slacpy( "A", paramInt1, paramInt1, arrayOfFloat1, 0, 49, paramArrayOfFloat1, paramInt4, paramInt5); } } } } if (!bool2) {} if (((paramintW.val == 0 ? 0 : 1) == 0 ? 0 : 1) != 0) {} if (((paramInt1 <= 2 ? 0 : 1) != 0 ? 1 : 0) != 0) { Slaset.slaset( "L", paramInt1 - 2, paramInt1 - 2, 0.0F, 0.0F, paramArrayOfFloat1, 3 - 1 + (1 - 1) * paramInt5 + paramInt4, paramInt5); } paramArrayOfFloat5[(1 - 1 + paramInt10)] = Math.max(Math.max(1, paramInt1), paramArrayOfFloat5[(1 - 1 + paramInt10)]); }
public static void sgegs( String paramString1, String paramString2, int paramInt1, float[] paramArrayOfFloat1, int paramInt2, int paramInt3, float[] paramArrayOfFloat2, int paramInt4, int paramInt5, float[] paramArrayOfFloat3, int paramInt6, float[] paramArrayOfFloat4, int paramInt7, float[] paramArrayOfFloat5, int paramInt8, float[] paramArrayOfFloat6, int paramInt9, int paramInt10, float[] paramArrayOfFloat7, int paramInt11, int paramInt12, float[] paramArrayOfFloat8, int paramInt13, int paramInt14, intW paramintW) { int i = 0; int j = 0; int k = 0; int m = 0; int n = 0; int i1 = 0; intW localintW1 = new intW(0); intW localintW2 = new intW(0); int i2 = 0; int i3 = 0; int i4 = 0; intW localintW3 = new intW(0); int i5 = 0; int i6 = 0; int i7 = 0; int i8 = 0; int i9 = 0; int i10 = 0; int i11 = 0; int i12 = 0; int i13 = 0; int i14 = 0; int i15 = 0; float f1 = 0.0F; float f2 = 0.0F; float f3 = 0.0F; float f4 = 0.0F; float f5 = 0.0F; float f6 = 0.0F; float f7 = 0.0F; float f8 = 0.0F; if (Lsame.lsame(paramString1, "N")) { i2 = 1; k = 0; } else if (Lsame.lsame(paramString1, "V")) { i2 = 2; k = 1; } else { i2 = -1; k = 0; } if (Lsame.lsame(paramString2, "N")) { i3 = 1; m = 0; } else if (Lsame.lsame(paramString2, "V")) { i3 = 2; m = 1; } else { i3 = -1; m = 0; } i10 = Math.max(4 * paramInt1, 1); i11 = i10; paramArrayOfFloat8[(1 - 1 + paramInt13)] = i11; n = paramInt14 != -1 ? 0 : 1; paramintW.val = 0; if ((i2 > 0 ? 0 : 1) != 0) { paramintW.val = -1; } else if ((i3 > 0 ? 0 : 1) != 0) { paramintW.val = -2; } else if ((paramInt1 >= 0 ? 0 : 1) != 0) { paramintW.val = -3; } else if ((paramInt3 >= Math.max(1, paramInt1) ? 0 : 1) != 0) { paramintW.val = -5; } else if ((paramInt5 >= Math.max(1, paramInt1) ? 0 : 1) != 0) { paramintW.val = -7; } else { if ((paramInt10 >= 1 ? 0 : 1) == 0) { if (k == 0) {} } if ((((paramInt10 >= paramInt1 ? 0 : 1) != 0 ? 1 : 0) == 0 ? 0 : 1) != 0) { paramintW.val = -12; } else { if ((paramInt12 >= 1 ? 0 : 1) == 0) { if (m == 0) {} } if ((((paramInt12 >= paramInt1 ? 0 : 1) != 0 ? 1 : 0) == 0 ? 0 : 1) != 0) { paramintW.val = -14; } else { if ((paramInt14 >= i10 ? 0 : 1) != 0) {} if (((n ^ 0x1) != 0 ? 1 : 0) != 0) { paramintW.val = -16; } } } } if ((paramintW.val != 0 ? 0 : 1) != 0) { i13 = Ilaenv.ilaenv(1, "SGEQRF", " ", paramInt1, paramInt1, -1, -1); i14 = Ilaenv.ilaenv(1, "SORMQR", " ", paramInt1, paramInt1, paramInt1, -1); i15 = Ilaenv.ilaenv(1, "SORGQR", " ", paramInt1, paramInt1, paramInt1, -1); i12 = Util.max(i13, i14, i15); i9 = 2 * paramInt1 + paramInt1 * (i12 + 1); paramArrayOfFloat8[(1 - 1 + paramInt13)] = i9; } if ((paramintW.val == 0 ? 0 : 1) != 0) { Xerbla.xerbla("SGEGS ", -paramintW.val); return; } if (n != 0) { return; } if ((paramInt1 != 0 ? 0 : 1) != 0) { return; } f6 = Slamch.slamch("E") * Slamch.slamch("B"); f7 = Slamch.slamch("S"); f8 = paramInt1 * f7 / f6; f3 = 1.0F / f8; f1 = Slange.slange( "M", paramInt1, paramInt1, paramArrayOfFloat1, paramInt2, paramInt3, paramArrayOfFloat8, paramInt13); i = 0; if ((f1 <= 0.0F ? 0 : 1) != 0) {} if (((f1 >= f8 ? 0 : 1) != 0 ? 1 : 0) != 0) { f2 = f8; i = 1; } else if ((f1 <= f3 ? 0 : 1) != 0) { f2 = f3; i = 1; } if (i != 0) { Slascl.slascl( "G", -1, -1, f1, f2, paramInt1, paramInt1, paramArrayOfFloat1, paramInt2, paramInt3, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } } f4 = Slange.slange( "M", paramInt1, paramInt1, paramArrayOfFloat2, paramInt4, paramInt5, paramArrayOfFloat8, paramInt13); j = 0; if ((f4 <= 0.0F ? 0 : 1) != 0) {} if (((f4 >= f8 ? 0 : 1) != 0 ? 1 : 0) != 0) { f5 = f8; j = 1; } else if ((f4 <= f3 ? 0 : 1) != 0) { f5 = f3; j = 1; } if (j != 0) { Slascl.slascl( "G", -1, -1, f4, f5, paramInt1, paramInt1, paramArrayOfFloat2, paramInt4, paramInt5, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } } i4 = 1; i5 = paramInt1 + 1; i8 = i5 + paramInt1; Sggbal.sggbal( "P", paramInt1, paramArrayOfFloat1, paramInt2, paramInt3, paramArrayOfFloat2, paramInt4, paramInt5, localintW3, localintW1, paramArrayOfFloat8, i4 - 1 + paramInt13, paramArrayOfFloat8, i5 - 1 + paramInt13, paramArrayOfFloat8, i8 - 1 + paramInt13, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 1); } else { i6 = localintW1.val + 1 - localintW3.val; i1 = paramInt1 + 1 - localintW3.val; i7 = i8; i8 = i7 + i6; Sgeqrf.sgeqrf( i6, i1, paramArrayOfFloat2, localintW3.val - 1 + (localintW3.val - 1) * paramInt5 + paramInt4, paramInt5, paramArrayOfFloat8, i7 - 1 + paramInt13, paramArrayOfFloat8, i8 - 1 + paramInt13, paramInt14 + 1 - i8, localintW2); if ((localintW2.val < 0 ? 0 : 1) != 0) { i11 = Math.max(i11, (int) paramArrayOfFloat8[(i8 - 1 + paramInt13)] + i8 - 1); } if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 2); } else { Sormqr.sormqr( "L", "T", i6, i1, i6, paramArrayOfFloat2, localintW3.val - 1 + (localintW3.val - 1) * paramInt5 + paramInt4, paramInt5, paramArrayOfFloat8, i7 - 1 + paramInt13, paramArrayOfFloat1, localintW3.val - 1 + (localintW3.val - 1) * paramInt3 + paramInt2, paramInt3, paramArrayOfFloat8, i8 - 1 + paramInt13, paramInt14 + 1 - i8, localintW2); if ((localintW2.val < 0 ? 0 : 1) != 0) { i11 = Math.max(i11, (int) paramArrayOfFloat8[(i8 - 1 + paramInt13)] + i8 - 1); } if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 3); } else { if (k != 0) { Slaset.slaset( "Full", paramInt1, paramInt1, 0.0F, 1.0F, paramArrayOfFloat6, paramInt9, paramInt10); Slacpy.slacpy( "L", i6 - 1, i6 - 1, paramArrayOfFloat2, localintW3.val + 1 - 1 + (localintW3.val - 1) * paramInt5 + paramInt4, paramInt5, paramArrayOfFloat6, localintW3.val + 1 - 1 + (localintW3.val - 1) * paramInt10 + paramInt9, paramInt10); Sorgqr.sorgqr( i6, i6, i6, paramArrayOfFloat6, localintW3.val - 1 + (localintW3.val - 1) * paramInt10 + paramInt9, paramInt10, paramArrayOfFloat8, i7 - 1 + paramInt13, paramArrayOfFloat8, i8 - 1 + paramInt13, paramInt14 + 1 - i8, localintW2); if ((localintW2.val < 0 ? 0 : 1) != 0) { i11 = Math.max(i11, (int) paramArrayOfFloat8[(i8 - 1 + paramInt13)] + i8 - 1); } if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 4); break label2389; } } if (m != 0) { Slaset.slaset( "Full", paramInt1, paramInt1, 0.0F, 1.0F, paramArrayOfFloat7, paramInt11, paramInt12); } Sgghrd.sgghrd( paramString1, paramString2, paramInt1, localintW3.val, localintW1.val, paramArrayOfFloat1, paramInt2, paramInt3, paramArrayOfFloat2, paramInt4, paramInt5, paramArrayOfFloat6, paramInt9, paramInt10, paramArrayOfFloat7, paramInt11, paramInt12, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 5); } else { i8 = i7; Shgeqz.shgeqz( "S", paramString1, paramString2, paramInt1, localintW3.val, localintW1.val, paramArrayOfFloat1, paramInt2, paramInt3, paramArrayOfFloat2, paramInt4, paramInt5, paramArrayOfFloat3, paramInt6, paramArrayOfFloat4, paramInt7, paramArrayOfFloat5, paramInt8, paramArrayOfFloat6, paramInt9, paramInt10, paramArrayOfFloat7, paramInt11, paramInt12, paramArrayOfFloat8, i8 - 1 + paramInt13, paramInt14 + 1 - i8, localintW2); if ((localintW2.val < 0 ? 0 : 1) != 0) { i11 = Math.max(i11, (int) paramArrayOfFloat8[(i8 - 1 + paramInt13)] + i8 - 1); } if ((localintW2.val == 0 ? 0 : 1) != 0) { if ((localintW2.val <= 0 ? 0 : 1) != 0) {} if (((localintW2.val > paramInt1 ? 0 : 1) != 0 ? 1 : 0) != 0) { paramintW.val = localintW2.val; } else { if ((localintW2.val <= paramInt1 ? 0 : 1) != 0) {} if (((localintW2.val > 2 * paramInt1 ? 0 : 1) != 0 ? 1 : 0) != 0) { localintW2.val -= paramInt1; } else { paramintW.val = (paramInt1 + 6); } } } else { if (k != 0) { Sggbak.sggbak( "P", "L", paramInt1, localintW3.val, localintW1.val, paramArrayOfFloat8, i4 - 1 + paramInt13, paramArrayOfFloat8, i5 - 1 + paramInt13, paramInt1, paramArrayOfFloat6, paramInt9, paramInt10, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 7); break label2389; } } if (m != 0) { Sggbak.sggbak( "P", "R", paramInt1, localintW3.val, localintW1.val, paramArrayOfFloat8, i4 - 1 + paramInt13, paramArrayOfFloat8, i5 - 1 + paramInt13, paramInt1, paramArrayOfFloat7, paramInt11, paramInt12, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 8); break label2389; } } if (i != 0) { Slascl.slascl( "H", -1, -1, f2, f1, paramInt1, paramInt1, paramArrayOfFloat1, paramInt2, paramInt3, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } Slascl.slascl( "G", -1, -1, f2, f1, paramInt1, 1, paramArrayOfFloat3, paramInt6, paramInt1, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } Slascl.slascl( "G", -1, -1, f2, f1, paramInt1, 1, paramArrayOfFloat4, paramInt7, paramInt1, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } } if (j != 0) { Slascl.slascl( "U", -1, -1, f5, f4, paramInt1, paramInt1, paramArrayOfFloat2, paramInt4, paramInt5, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } Slascl.slascl( "G", -1, -1, f5, f4, paramInt1, 1, paramArrayOfFloat5, paramInt8, paramInt1, localintW2); if ((localintW2.val == 0 ? 0 : 1) != 0) { paramintW.val = (paramInt1 + 9); return; } } } } } } } label2389: paramArrayOfFloat8[(1 - 1 + paramInt13)] = i11; }