add &block option to set_mag Vec2D