When you do the calculations of force constants and dynamic matrix, you can fix the atoms of substrate. In such case, only the atoms of adsorbate molecule will be made by small displacement to calculate the vibration frequencies.
see:
http://docs.quantumwise.com/manuals/Types/DynamicalMatrix/DynamicalMatrix.html#dynamicalmatrix-c
constraints(),
The list of constrained atoms.
Thank you zh, here is another question, the ATK does not work on constraints(),
***************************************************
+
File "phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "C20-NO-phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "C20-NO-phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "C20-NO-phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "C20-NO-phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
File "C20-NO-phonon.py", line 219
constraints(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19),
SyntaxError: non-keyword arg after keyword arg
***************************************************
i use in ATK 2014.3, how to solve this problem?