code: public static double normF( DMatrixD1 a ) {
          double total = 0;
  
          double scale = CommonOps_DDRM.elementMaxAbs(a);
  
          if( scale == 0.0 )
              return 0.0;
  
          final int size = a.getNumElements();
  
          for( int i = 0; i < size; i++ ) {
              double val = a.get(i)/scale;
              total += val*val;
          }
  
          return scale * Math.sqrt(total);
      }
docs: <p>
  Computes the Frobenius matrix norm:<br>
  <br>
  normF = Sqrt{  &sum;<sub>i=1:m</sub> &sum;<sub>j=1:n</sub> { a<sub>ij</sub><sup>2</sup>}   }
  </p>
  <p>
  This is equivalent to the element wise p=2 norm.  See {@link #fastNormF} for another implementation
  that is faster, but more prone to underflow/overflow errors.
  </p>
  
  @param a The matrix whose norm is computed.  Not modified.
  @return The norm's value.