Field profile (exact, as given)
x0 = sqrt(mi/me), B0 = vA·x0. With s=(x1-xt)/Lsh: bx = B0 cosθ, by = B0 sinθ + 0.5(1-tanh s)·B0·(-sinθ+sqrt(sin²θ+B1²-1)), bz=0. x1-xt > 0 is upstream (undisturbed field), x1-xt < 0 is downstream (compressed). "Uniform B" pins by to its upstream value (tanh→1) everywhere, dropping the ramp. vsh is a direct input parameter; Ez = -vsh·B0 sinθ (Ex=Ey=0), or E=0 if disabled. φBn is exposed but, per the code given, does not enter B or E (bz is fixed at 0). B field-line markers advect at v(s) = |vsh|·[-1 + 0.375(1-tanh s)], s=(x1-xt)/Lsh: |v| goes from |vsh| far upstream (x1-xt>0) down to 0.25|vsh| far downstream (x1-xt<0), so markers automatically pile up and read denser on the downstream side, since local marker density ∝ 1/|v| by continuity. With |vsh| the flow direction is fixed (always toward -x, upstream→downstream) regardless of the sign of the vsh slider.
Integration
m dv/dt = q(E + v×B), Boris pusher, with B and E resampled from the profile at the particle's current x1 every substep — so as the particle crosses the ramp near x1=xt it feels the changing field self-consistently, including possible shock-drift reflection if v is mostly along B on the upstream side. Internally all lengths (x1-xt, xt, domain size, Larmor radius, sliders) are integrated in the code's native units; every displayed length is converted to ion inertial length units via di = d · sqrt(mi/me), so distances read directly in di. Time is likewise shown as t·ωc, with ωc = |qparticle|B0/mparticle — the tracked particle's own gyro frequency at the reference field B0 (not the fixed bulk-ion mi), so it updates if you change the test particle's mass or charge. vx0, vy0, vz0 are labeled in units of c: the code's x0 = sqrt(mi/me) (electron-skin-depth normalization) and B0 = vA·x0 formula match the standard de-based normalization used in PIC/hybrid Bell-instability shock setups (lengths in c/ωpe, time in ωpe-1, velocities in c) — this wasn't stated explicitly in the code you provided, so double check it against your own normalization if it differs.