(* Examples of potentials *) examples = Hold[ name = "A single crossing point, elevated"; v11[x_] = Tanh[x + 1]; v22[x_] = -Tanh[x - 1]; v12[x_] = 0.1 Exp[-x^2]; m = 1836.2; en = 1.1; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 2{-1, 1}, name = "From the paper M. P. Moody et al. \"Phase corrected ...\", 2003 (second example, two interfering crossing points, m=1)"; en = 1.1; m = 1; a11 = 0.25; a11 = 0.75; alpha11 = 10.0; a22 = 0.25; a22 = 0.75; alpha22 = 10.0; a12 = 0.1; alpha12 = 5.0; xc = 2.; v11[x_] = a11 Exp[-(x/alpha11)^2]; v22[x_] = 1 - a22 Exp[-(x/alpha22)^2]; v12[x_] = a12 Exp[-(x/alpha12)^2]; {x0, x1} = 25{-1, 1}; {xp0, xp1} = 25{-1, 1}, name = "From the paper M. F. Herman and M. P. Moody \"Numerical Study ...\", 2005? (two interfering crossing points, large mass and energy)"; en = 10; m = 1836.2; a11 = 1.0; alpha11 = 1.0; a12 = 0.1; alpha12 = 0.05; xc = 2.; v11[x_] = a11 (Tanh[alpha11(x + xc)])(Tanh[alpha11(x - xc)]); v22[x_] = -v11[x]; v12[x_] = a12 Exp[-alpha12 x^2]; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 5{-1, 1}, name = "Two gaussians, with a crossing point near the summit"; en = 1.1; m = 1836.2; dx = 0.2; v11[x_] = Exp[-(x - dx)^2]; v22[x_] = Exp[-(x + dx)^2]; v12[x_] = 0.02 Exp[-x^2]; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 1{-1, 1}, name = "Gaussian crosses constant potential"; en = 1.02; m = 1836.2; v11[x_] = Exp[-x^2]; v22[x_] = 0.5; v12[x_] = 0.1 Exp[-x^2]; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 2{-1, 1}, name = "Constant potentials, with Gaussian interaction"; en = 0.11; m = 1836.2; v11[x_] = 0.1; v22[x_] = 0; v12[x_] = 0.03 Exp[-x^2]; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 5{-1, 1}, name = "Oscillating Gaussian crosses constant potential six times"; en = 1.1; m = 1836.2; v11[x_] = Exp[-x^2]Cos[10 x]; v22[x_] = 0.5; v12[x_] = 0.1 Exp[-x^2]; {x0, x1} = 20{-1, 1}; {xp0, xp1} = 2{-1, 1}, name = "From the paper of Marc Boiron, Maurice Lombardi and Laurent Wiesenfeld 'Coupled modes semiclassical treatment of nonadiabatic transitions', J. Phys. A: Math. Gen. 30 (1997) 3907\[Dash]3926. E = 15, V12 = 1.5*(broad Gaussian)"; v11[x_] = -10 Tanh[(x + 16)/10] - 4; v22[x_] = -8 Exp[-(x/20)^2]; v12[x_] = 1.5 Exp[-(x/50)^2]; m = 1; en = 15; {x0, x1} = 150{-1, 1}; {xp0, xp1} = {-50, 30}, name = "From the paper of Marc Boiron, Maurice Lombardi and Laurent Wiesenfeld 'Coupled modes semiclassical treatment of nonadiabatic transitions', J. Phys. A: Math. Gen. 30 (1997) 3907\[Dash]3926. E = 60, V12 = 3*(broad Gaussian)"; v11[x_] = -10 Tanh[(x + 16)/10] - 4; v22[x_] = -8 Exp[-(x/20)^2]; v12[x_] = 3 Exp[-(x/50)^2]; m = 1; en = 60; {x0, x1} = 150{-1, 1}; {xp0, xp1} = {-50, 30}, name = "From the paper of Michael F.Herman 'Choosing a good representation of the quantum state wave functions for semiclassical surface hopping calculations', J. Chem. Phys. 11 (1999) 10427, Table I, E = 1.3"; aa11 = 1; aa22 = -1; a11 = a22 = 1; aa12 = 0.1; a12 = 0.05; c1 = c2 = 0; v11[x_] = aa11 Tanh[a11 x] + c1; v22[x_] = aa22 Tanh[a22 x] + c2; v12[x_] = aa12 Exp[-a12 x^2]; m = 1836.2; en = 1.3; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman 'Choosing a good representation of the quantum state wave functions for semiclassical surface hopping calculations', J. Chem. Phys. 11 (1999) 10427, Table II, E = 2"; aa11 = 1; aa22 = 0.5; a11 = a22 = 1; aa12 = 0.1; a12 = 0.05; c1 = c2 = 0; v11[x_] = aa11 Tanh[a11 x] + c1; v22[x_] = aa22 Tanh[a22 x] + c2; v12[x_] = aa12 Exp[-a12 x^2]; m = 1836.2; en = 2.0; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman 'Choosing a good representation of the quantum state wave functions for semiclassical surface hopping calculations', J. Chem. Phys. 11 (1999) 10427, Table III, E = 2"; aa11 = 1; aa22 = 0.5; a11 = 1; a22 = 1.9; aa12 = 0.1; a12 = 0.05; c1 = c2 = 0; v11[x_] = aa11 Tanh[a11 x] + c1; v22[x_] = aa22 Tanh[a22 x] + c2; v12[x_] = aa12 Exp[-a12 x^2]; m = 1836.2; en = 2.0; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman 'Choosing a good representation of the quantum state wave functions for semiclassical surface hopping calculations', J. Chem. Phys. 11 (1999) 10427, Table IV, E = 2"; aa11 = 1; aa22 = 0.5; a11 = 0.5; a22 = 2.0; aa12 = 0.1; a12 = 0.05; c1 = c2 = 0; v11[x_] = aa11 Tanh[a11 x] + c1; v22[x_] = aa22 Tanh[a22 x] + c2; v12[x_] = aa12 Exp[-a12 x^2]; m = 1836.2; en = 2.0; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman and Michael P.Moody 'Numerical study of the accuracy and efficiency of various approaches for Monte Carlo surface hopping calculations', J. Chem. Phys. 122 (2005) 094104, No. 1 (single crossing)"; aa11 = aa22 = 0.5; alpha11 = alpha22 = 1; aa12 = 0.1; alpha12 = 10; v11[x_] = aa11 (1 + Tanh[alpha11 x]); v22[x_] = aa22 (1 + Tanh[-alpha22 x]); v12[x_] = aa12 Exp[-(x/alpha12)^2]; m = 1; en = 3.0; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman and Michael P.Moody 'Numerical study of the accuracy and efficiency of various approaches for Monte Carlo surface hopping calculations', J. Chem. Phys. 122 (2005) 094104, No. 2 (no crossing)"; aa11 = aa22 = 0.25; alpha11 = alpha22 = 1; aa12 = 0.1; alpha12 = 5; v11[x_] = aa11 Exp[-(x/alpha11)^2]; v22[x_] = 1 - aa22 Exp[-(x/alpha22)^2]; v12[x_] = aa12 Exp[-(x/alpha12)^2]; m = 1; en = 3.0; {xp0, xp1} = 5{-1, 1}; , name = "From the paper of Michael F.Herman and Michael P.Moody 'Numerical study of the accuracy and efficiency of various approaches for Monte Carlo surface hopping calculations', J. Chem. Phys. 122 (2005) 094104, No. 3 (dual crossing)"; aa11 = aa22 = 1; alpha11 = alpha22 = 1; aa12 = 0.1; alpha12 = 5; v11[x_] = aa11 Exp[-(x/alpha11)^2]; v22[x_] = 1 - aa22 Exp[-(x/alpha22)^2]; v12[x_] = aa12 Exp[-(x/alpha12)^2]; m = 1; en = 3.0; {xp0, xp1} = 5{-1, 1}; (* name = "From the paper of Yinghua Wu, Michael F.Herman, Victor S. Batista 'Matching-pursuit/split-operator Fourier-transform simulations of nonadiabatic quantum dynamics', J. Chem. Phys. 122 (2005) 114114, First model, single crossing"; v11[x_] = If[x > 0, 0.01(1 - Exp[-1.6 x]), -0.01(1 - Exp[1.6 x])]; v22[x_] = -v11[x]; v12[x_] = 0.005 Exp[-x^2]; m = 1; en = 3.0; {x0, x1} = 50{-1, 1}; {xp0, xp1} = 25{-1, 1}, *) ];