question: private void findLogIntervals ( int nc ) { double zMin = Double . MAX_VALUE ; double zMax = - zMin ; int ni = funcArray . length ; for ( int i = 0 ; i < ni ; ++ i ) { int nj = funcArray [ i ] . length ; for ( int j = 0 ; j < nj ; ++ j ) { double zVal = funcArray [ i ] [ j ] ; zMin = Math . min ( zMin , zVal ) ; zMax = Math . max ( zMax , zVal ) ; } } if ( zMin < 0 ) throw new IllegalArgumentException ( kNegLogDataMsg ) ; cAttr = new ContourAttrib [ nc ] ; double temp = Math . log ( zMin ) ; double delta = ( Math . log ( zMax ) - temp ) / ( nc + 1 ) ; for ( int i = 0 ; i < nc ; i ++ ) cAttr [ i ] = new ContourAttrib ( Math . exp ( temp + ( i + 1 ) * delta ) ) ; }
target:  Find contour intervals that are logarithmically spaced through the data.