private ArrayList<Iteration> secantMethod(ProjectInput input) {
		ArrayList<Iteration> iterations = new ArrayList<Iteration>();
		
		if (input.getIteration().isEnabled() && input.getThreshold().isEnabled()) {
			iterations = SecantComputation.secantBoth(input.getPolynomial(), input.getX0(), input.getX1(),
					input.getThreshold().getValue(), (int) input.getIteration().getValue());
		}
		else if (input.getIteration().isEnabled() && !input.getThreshold().isEnabled()) {
			iterations = SecantComputation.secantIteration(input.getPolynomial(), input.getX0(), input.getX1(),
					(int) input.getIteration().getValue());
		}
		else if (!input.getIteration().isEnabled() && input.getThreshold().isEnabled()) {
			iterations = SecantComputation.secantThreshold(input.getPolynomial(), input.getX0(), input.getX1(),
					input.getThreshold().getValue());
		}
		else {
			return null;
		}
		
		/* debugging */
		for (Iteration iteration : iterations) {
			System.out.print(iteration.getMid().getX());
			System.out.print("\t\t" + iteration.getMid().getY());
			System.out.print("\t\t" + iteration.getRelativeError() + "\n");
		}
		/**/
		
		return iterations;
	}