Free energy calculation using thermodynamic perturbation

Dear All,
I am trying calculate interaction energy between two carbon nanotubes in presence of water. I want to use thermodynamic perturbation for that.
Part of my codes are given below:

Apply SHAKE constraints to the water molecules--------------------

fix 2 all shake 1e-6 500 0 a 2

velocity water create 300.0 12345678 dist uniform

#Fix velocities of CNTs to zero--------------------------------------
velocity cnt1 set 0.0 0.0 0.0 units box
velocity cnt2 set 0.0 0.0 0.0 units box

#Freeze CNTs-----------------------------------------------------------
fix freeze1 cnt1 setforce 0.0 0.0 0.0
fix freeze2 cnt2 setforce 0.0 0.0 0.0

After this I am calculating the interaction energy using compute group/group command for CNT/water and CNT/CNT interactions.

compute 3 cnt group/group water kspace yes
fix 7 cnt ave/time 1 1 100 c_3 c_3[1] c_3[2] c_3[3] file U_sb_18.txt

compute 4 cnt group/group cnt kspace yes
fix 8 cnt ave/time 1 1 100 c_4 c_4[1] c_4[2] c_4[3] file U_ss_18.txt

Then I am displacing the tubes by a small amount as a perturbation,using displace_atoms command.

displace_atoms cnt1 move -0.05 0.0 0.0 units box
displace_atoms cnt2 move 0.05 0.0 0.0 units box

And then again I am computing the interaction energy.

Is it the right way to do the thermodynamic perturbation for free energy calculation?

Please help.

Thanks and regards,