Built templated Data struct that allows for swapping between single and double precision simulation