3
3 copied to clipboard
Shift() only exists for X-axis
Currently, only the Shift(x) command can be used in input scripts, which shifts the magnetization along the X axis. Internally, shifts along Y and Z exist, but these are only used in a select few internal functions.
If someday we wish to add support for shifting along all coordinate axes, we should:
- [ ] Create
ShiftMagFandShiftMagB, storing the front (+z) and back (-z) inserted magnetization. - [ ] Implement
cuda/shiftedgecarryz.cu. - [ ] Add Z direction to
engine/shift.goand exposeShiftX(),ShiftY()andShiftZ()for input scripts.ShiftX()is redundant as it is identical toShift(), butShift()has to stay for backwards compatibility. - [ ] Expose
TotalShiftYand createTotalShiftZ. Ideally,TotalShiftwould be a vector, but that would break backwards compatibility, so keepTotalShiftthe same and add a redundantTotalShiftX.