Dear all, I am tring to discretize the Hamiltonian containing the functional terms (like sin(k_x) ), but I am getting an TypeError : 'Symbol' object is not callable. The code is from __future__ import division import kwant import kwant.continuum import scipy.sparse.linalg import scipy.linalg import numpy as np import sympy from math import sin, cos, sqrt, pi import matplotlib.pyplot as plt hamiltonian = ("""sigma_x * sin(k_x) + sigma_y * sin(k_y) + sigma_0*(k_z)""") hamiltonian = kwant.continuum.sympify(hamiltonian) template, coords = kwant.continuum.discretize_symbolic(hamiltonian) t = kwant.continuum.build_discretized(template, coords) print(t)
TypeError Traceback (most recent call last)<ipython-input-5-2b66bb479997> in <module> 9 import matplotlib.pyplot as plt 10 hamiltonian = ("""sigma_x * sin(k_x) + sigma_y * sin(k_y) + sigma_0*(k_z)""")---> 11 hamiltonian = kwant.continuum.sympify(hamiltonian) 12 template, coords = kwant.continuum.discretize_symbolic(hamiltonian) 13 t = kwant.continuum.build_discretized(template, coords) /usr/local/lib/python3.6/dist-packages/kwant/continuum/_common.py in sympify(expr, locals) 197 # sympy types. 198 subs = {r: sympy.Symbol(str(r.func))(*r.args)--> 199 for r in hamiltonian.atoms(sympy.Function)} 200 201 hamiltonian = hamiltonian.subs(subs) /usr/local/lib/python3.6/dist-packages/kwant/continuum/_common.py in <dictcomp>(.0) 197 # sympy types. 198 subs = {r: sympy.Symbol(str(r.func))(*r.args)--> 199 for r in hamiltonian.atoms(sympy.Function)} 200 201 hamiltonian = hamiltonian.subs(subs) TypeError: 'Symbol' object is not callable Could you please help me in the above context. Thanks in Advance. Naveen -- With Best Regards NAVEEN YADAV Ph.D Research Scholar Deptt. Of Physics & Astrophysics University Of Delhi.