code: public void writeOptions(PrintWriter fout) {
  	fout.println("OPTION VALUES:");	
  	fout.println("==============");
  	fout.println("Model directory: " + modelDir);
  	fout.println("Model file: " + modelFile);
  	fout.println("Option file: " + optionFile);
  	fout.println("Training log file: " + trainLogFile + " (this one)");
  	fout.println("Training data file: " + trainDataFile);
  	fout.println("Testing data file: " + testDataFile);
  	fout.println("Number of training examples " + Integer.toString(numTrainExps));
  	fout.println("Number of testing examples " + Integer.toString(numTestExps));
  	fout.println("Number of class labels: " + Integer.toString(numLabels));	
  	fout.println("Number of context predicates: " + Integer.toString(numCps));
  	fout.println("Number of features: " + Integer.toString(numFeatures));
  	fout.println("Rare threshold for context predicates: " + Integer.toString(cpRareThreshold));	
  	fout.println("Rare threshold for features: " + Integer.toString(fRareThreshold));
  	fout.println("Number of training iterations: " + Integer.toString(numIterations));
  	fout.println("Initial value of feature weights: " + Double.toString(initLambdaVal));
  	fout.println("Sigma square: " + Double.toString(sigmaSquare));
  	fout.println("Epsilon for convergence: " + Double.toString(epsForConvergence));
  	fout.println("Number of corrections in L-BFGS: " + Integer.toString(mForHessian));
  	if (evaluateDuringTraining) {
  	    fout.println("Evaluation during training: true");
  	} else {
  	    fout.println("Evaluation during training: false");
  	}
  	if (saveBestModel) {
  	    fout.println("Save the best model towards testing data: true");
  	} else {
  	    fout.println("Save the best model towards testing data: false");
  	}
  	fout.println();
      }
docs: Write options.
  
  @param fout the fout