public static Matrix readLAVModelFile(String fileName,boolean ignoreFirstLine){
  LinkedList<String> fileRows=GeneralLib.readFileRows(fileName);
  Matrix stringMatrix=new Matrix();
  int maxNumberOfTabs=0;
  for (  String row : fileRows) {
    int numberOfTabs=row.split("\t").length;
    if (numberOfTabs > maxNumberOfTabs) {
      maxNumberOfTabs=numberOfTabs;
    }
  }
  for (  String row : fileRows) {
    String[] columns=row.split("\t");
    int numberOfTabs=columns.length;
    if (numberOfTabs == maxNumberOfTabs) {
      if (ignoreFirstLine) {
        ignoreFirstLine=false;
      }
 else {
        ArrayList<String> rowList=GeneralLib.convertStringArrayToArrayList(columns);
        stringMatrix.addRow(rowList);
      }
    }
 else {
      DebugLib.emptyFunctionForSettingBreakPoint();
    }
  }
  if (stringMatrix.getNumberOfRows() == 0) {
    DebugLib.stopSystemAndReportInconsistency("maxNumberOfTabs:" + maxNumberOfTabs);
  }
  return stringMatrix;
}

public static Matrix readLAVModelFile ( String fileName , boolean ignoreFirstLine ) { LinkedList < String > fileRows = GeneralLib . readFileRows ( fileName ) ; Matrix stringMatrix = new Matrix ( ) ; int maxNumberOfTabs = 0 ; for ( String row : fileRows ) { int numberOfTabs = row . split ( "\t" ) . length ; if ( numberOfTabs > maxNumberOfTabs ) { maxNumberOfTabs = numberOfTabs ; } } for ( String row : fileRows ) { String [ ] columns = row . split ( "\t" ) ; int numberOfTabs = columns . length ; if ( numberOfTabs == maxNumberOfTabs ) { if ( ignoreFirstLine ) { ignoreFirstLine = false ; } else { ArrayList < String > rowList = GeneralLib . convertStringArrayToArrayList ( columns ) ; stringMatrix . addRow ( rowList ) ; } } else { DebugLib . emptyFunctionForSettingBreakPoint ( ) ; } } if ( stringMatrix . getNumberOfRows ( ) == 0 ) { DebugLib . stopSystemAndReportInconsistency ( "maxNumberOfTabs:" + maxNumberOfTabs ) ; } return stringMatrix ; }
todo : write test for this .
