Dirac wavefunction, energy vs momentum curves for a stepped potential barrier.

e[k_, v0_, s_] := s Sqrt[ 1 + k^2] + v0 ;
eApprox[k_, v0_, s_] := s( 1 + k^2/2 ) + v0 ;
k2[k1_, v0_] := Sqrt[(Sqrt[1 + k1^2] - v0)^2 -1] ;
(* If there is no solution, rescale the point so that it's off the chart *)
k2r[k1_, v0_] := (Re[k2[k1, v0]] + Im[k2[k1, v0]]*100 )// N;

(*With[ {v0=2, d = 3, r = 10}, Plot[ {e[k, v0], eApprox[k, v0]}, {k, -d, d}, PlotRange -> {{-d,d}, {0,r}}]]*)


Manipulate[  
Show[{
Plot[ {
e[k, v0, 1], (*eApprox[k, v0, 1],*)
e[k, v0, -1],(*, eApprox[k, v0, -1]*)
e[k, 0, 1], (*eApprox[k, v0, 1],*)
e[k, 0, -1]
}, {k, -d, d}, PlotRange -> {{-d,d}, {-r,r}},
AxesLabel -> {"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)", "\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)" }],
Graphics[
{PointSize -> Large,
Point[{kp, e[kp, 0, 1]}],
(*Point[{kp, e[kp, 0, -1]}],*)
Point[{k2r[kp,v0], e[k2r[kp,v0], v0, 1]}],
Point[{k2r[kp,v0], e[k2r[kp,v0], v0, -1]}],
Point[{100,100}]
}
]
}]
(*{k2r[kp,v0], e[k2r[kp,v0], v0, 1]}*)
,
{{v0, 0, "\!\(\*FractionBox[SubscriptBox[\(V\), \(0\)], \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}, 0, 10} ,
{{d, 2, "domain"}, 1, 20},
{{r, 4, "range"}, 2, 10},
{{kp, 0, "\!\(\*FractionBox[\(ℏ\\ \*SubscriptBox[\(k\), \(1\)]\), \(m\\ c\)]\)"}, 0, 10}
]

(Subscript[V, 0])< 2 m (c^2), but momentum small enough for total reflection.

p1 = DynamicModule[{d=2,kp=1.56`,r=4,v0=1.36`},Show[{Plot[{e[k,v0,1],e[k,v0,-1],e[k,0,1],e[k,0,-1]},{k,-d,d},PlotRange->{{-d,d},{-r,r}},AxesLabel->{"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)","\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}],Graphics[{PointSize -> Large,Point[{kp,e[kp,0,1]}],Point[{k2r[kp,v0],e[k2r[kp,v0],v0,1]}],Point[{100,100}]}]}]]

(Subscript[V, 0])< 2 m (c^2), with high enough momentum to have transmision.

p2 =DynamicModule[{d=2,kp=1.48`,r=4,v0=0.66`},Show[{Plot[{e[k,v0,1],e[k,v0,-1],e[k,0,1],e[k,0,-1]},{k,-d,d},PlotRange->{{-d,d},{-r,r}},AxesLabel->{"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)","\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}],Graphics[{PointSize -> Large,Point[{kp,e[kp,0,1]}],Point[{k2r[kp,v0],e[k2r[kp,v0],v0,1]}],Point[{100,100}]}]}]]

(Subscript[V, 0])> 2 m (c^2), with momentum low enough that there is anti-particle transmission.

p3 = DynamicModule[{d=2,kp=1.72`,r=4,v0=3.4`},Show[{Plot[{e[k,v0,1],e[k,v0,-1],e[k,0,1],e[k,0,-1]},{k,-d,d},PlotRange->{{-d,d},{-r,r}},AxesLabel->{"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)","\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}],Graphics[{PointSize -> Large,Point[{kp,e[kp,0,1]}],(*Point[{k2r[kp,v0],e[k2r[kp,v0],v0,1]}],*)Point[{k2r[kp,v0],e[k2r[kp,v0],v0,-1]}],Point[{100,100}]}]}]]

(Subscript[V, 0])> 2 m (c^2), with momentum in a total reflection domain.

p4 = DynamicModule[{d=2,kp=1.87`,r=4,v0=2.62`},Show[{Plot[{e[k,v0,1],e[k,v0,-1],e[k,0,1],e[k,0,-1]},{k,-d,d},PlotRange->{{-d,d},{-r,r}},AxesLabel->{"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)","\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}],Graphics[{PointSize -> Large,Point[{kp,e[kp,0,1]}],Point[{k2r[kp,v0],e[k2r[kp,v0],v0,1]}],Point[{k2r[kp,v0],e[k2r[kp,v0],v0,-1]}],Point[{100,100}]}]}]]

(Subscript[V, 0])> 2 m (c^2), with momentum high enough for transmission.

p5 = DynamicModule[{d=6.26`,kp=4.3`,r=5.03`,v0=2.7`},Show[{Plot[{e[k,v0,1],e[k,v0,-1],e[k,0,1],e[k,0,-1]},{k,-d,d},PlotRange->{{-d,d},{-r,r}},AxesLabel->{"\!\(\*FractionBox[\(ℏ\\ k\), \(m\\ c\)]\)","\!\(\*FractionBox[\(E\), \(m\\ \*SuperscriptBox[\(c\), \(2\)]\)]\)"}],Graphics[{PointSize -> Large, Point[{kp,e[kp,0,1]}],Point[{k2r[kp,v0],e[k2r[kp,v0],v0,1]}],Point[{100,100}]}]}]]

(*peeters`exportForLatex["ps4DiracStepPotentialFig1", p1]
peeters`exportForLatex["ps4DiracStepPotentialFig2", p2]*)
peeters`exportForLatex["ps4DiracStepPotentialFig3", p3]
(*peeters`exportForLatex["ps4DiracStepPotentialFig4", p4]
peeters`exportForLatex["ps4DiracStepPotentialFig5", p5]*)