applyCTRL(), apply() and channel() can now use subsystems of different dimensions (EXPERIMENTAL)