floatType.setType(Type.FLOAT);
// structure type vector
StructuredType vector = new StructuredType();
List<AVariable> vectorVars = new ArrayList<AVariable>();
SimpleVariable x = new SimpleVariable();
SimpleVariable y = new SimpleVariable();
SimpleVariable z = new SimpleVariable();
x.setName("x");
x.setType(floatType);
y.setName("y");
y.setType(floatType);
z.setName("z");
z.setType(floatType);
vectorVars.addAll(Arrays.asList(x, y, z));
vector.setVariables(vectorVars);
// structure type particle
StructuredType particle = new StructuredType();
List<AVariable> particleVars = new ArrayList<AVariable>();
SimpleVariable position = new SimpleVariable();
SimpleVariable velocity = new SimpleVariable();
position.setName("position");
position.setType(vector);
velocity.setName("velocity");
velocity.setType(vector);
particleVars.addAll(Arrays.asList(position, velocity));
particle.setVariables(particleVars);
// array of particles
ArrayVariable particles = new ArrayVariable();