@Override
	public void execute(double t) {
		Matrix u1 = input1.getInput();
		Matrix u2 = input2.getInput();
		Matrix u3 = input3.getInput();

		double[] y = new double[input1.getDim() + input2.getDim()
				+ input3.getDim()];
		if (u1 != null)
			for (int i = 0; i < input1.getDim(); i++)
				y[i] = u1.get(i, 0);
		if (u2 != null)
			for (int i = 0; i < input2.getDim(); i++)
				y[input1.getDim() + i] = u2.get(i, 0);
		if (u3 != null)
			for (int i = 0; i < input3.getDim(); i++)
				y[input1.getDim() + input2.getDim() + i] = u3.get(i, 0);
		try {
			outputY.setOutput(new ColumnMatrix(y));
		} catch (OrderException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}