kwant.continuum.sympify fails to raise a warning in some cases
to reproduce:
import kwant
def discretized_hamiltonian(a):
hamiltonian = ("(0.5 * hbar**2 * (k_x**2 + k_y**2 + k_z**2) / m_eff - mu + V(x)) * sigma_0 + "
"alpha * (k_y * sigma_x - k_x * sigma_y) + "
"0.5 * g * mu_B * (B_x * sigma_x + B_y * sigma_y + B_z * sigma_z)")
hamiltonian = kwant.continuum.sympify(hamiltonian)
def do(subs):
tb_ham, coords = kwant.continuum.discretize_symbolic(hamiltonian)
templ = kwant.continuum.build_discretized(
tb_ham, grid_spacing=a, coords=coords, locals=subs)
return templ
templ = do({'g': 0, 'alpha': 0})
return templ
discretized_hamiltonian(10)