Fix a bug when copied iterators became invalid.

Curently in all the interpolation, the array's iterators are all copied but not the actual container content. So these iterators will be valid without giving any warning when the original contaner went out of its own scope. 

The user who use the derived class of the base interpolation won't know such implementation detail. It is very error prone since user may accidentally miss this point and face the evil of undefined behavior. I have spotted one such bug in the file ```concentrating1dmesher.cpp```` .