Skip to content

Shift() only exists for X-axis #337

@JonathanMaes

Description

@JonathanMaes

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 ShiftMagF and ShiftMagB, storing the front (+z) and back (-z) inserted magnetization.
  • Implement cuda/shiftedgecarryz.cu.
  • Add Z direction to engine/shift.go and expose ShiftX(), ShiftY() and ShiftZ() for input scripts. ShiftX() is redundant as it is identical to Shift(), but Shift() has to stay for backwards compatibility.
  • Expose TotalShiftY and create TotalShiftZ. Ideally, TotalShift would be a vector, but that would break backwards compatibility, so keep TotalShift the same and add a redundant TotalShiftX.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions