OK.  I'll change it to check std::numeric_limits() instead of 0.  

Note that size is not always 1.  It is initialized to 1 if no spheres exist, but if the SRDF has >1 spheres then the list here will too.  I am counting on the srdf code to ensure that either there are no 0-radius spheres or else only a single one.  If the srdf has a 0-radius sphere that is a bug.  But I want to be robust.  The easiest way to be robust is eliminate the sphere if there is a single 0-radius sphere, but just leave it if there are >1 spheres and some have 0 radius.  It would be more robust to go through the list of spheres and eliminate any that are 0-radius, but that would make dealing with IDs difficult (I'll send an email to explain the ids and ask your opinion about them...).  

Actually maybe best to wait for me to send the email and try to explain there...