public double geometricMean_as_double() {
		double gmean = 0.0D;
		switch (type) {
		case 1:
			double[] dd = this.getArray_as_double();
			gmean = Stat.geometricMean(dd);
			break;
		case 12:
			BigDecimal[] bd = this.getArray_as_BigDecimal();
			gmean = Stat.geometricMean(bd);
			bd = null;
			break;
		case 14:
			throw new IllegalArgumentException("Complex cannot  be converted to double");
		default:
			throw new IllegalArgumentException("This type number, " + type + ", should not be possible here!!!!");

		}
		return gmean;
	}