dla_gbrpvgrw function
Implementation
double dla_gbrpvgrw(
final int N,
final int KL,
final int KU,
final int NCOLS,
final Matrix<double> AB_,
final int LDAB,
final Matrix<double> AFB_,
final int LDAFB,
) {
final AB = AB_.having(ld: LDAB);
final AFB = AFB_.having(ld: LDAFB);
int I, J, KD;
double AMAX, UMAX, RPVGRW;
RPVGRW = 1.0;
KD = KU + 1;
for (J = 1; J <= NCOLS; J++) {
AMAX = 0.0;
UMAX = 0.0;
for (I = max(J - KU, 1); I <= min(J + KL, N); I++) {
AMAX = max(AB[KD + I - J][J].abs(), AMAX);
}
for (I = max(J - KU, 1); I <= J; I++) {
UMAX = max(AFB[KD + I - J][J].abs(), UMAX);
}
if (UMAX != 0.0) {
RPVGRW = min(AMAX / UMAX, RPVGRW);
}
}
return RPVGRW;
}