docs: public static boolean invert(final DMatrixRMaj cov , final DMatrixRMaj cov_inv ) {
          if( cov.numCols <= 4 ) {
              if( cov.numCols != cov.numRows ) {
                  throw new IllegalArgumentException("Must be a square matrix.");
              }
  
              if( cov.numCols >= 2 )
                  UnrolledInverseFromMinor_DDRM.inv(cov,cov_inv);
              else
                  cov_inv.data[0] = 1.0/cov.data[0];
  
          } else {
              LinearSolverDense<DMatrixRMaj> solver = LinearSolverFactory_DDRM.symmPosDef(cov.numRows);
              // wrap it to make sure the covariance is not modified.
              solver = new LinearSolverSafe<DMatrixRMaj>(solver);
              if( !solver.setA(cov) )
                  return false;
              solver.invert(cov_inv);
          }
          return true;
      }