num_particles will be set with coordinates, cf. Abstract_Component_Coordinates_Reader.
Is it too fragile?