# Created by charmm2lammps v1.8.1 on Fri Aug 23 00:57:47 KST 2013 units real neigh_modify every 1 #processors 2 4 4 atom_style full bond_style harmonic angle_style charmm dihedral_style charmm improper_style harmonic pair_style lj/charmm/coul/long 8 10 pair_modify mix arithmetic kspace_style pppm 1e-4 read_data wat_suf_oil.data minimize 1.0e-4 1.0e-6 100 1000 ##################group###################### group lo_suf id <> 6945 8888 group hi_suf id <> 8889 10832 group lo_dec id <> 1 3456 group hi_dec id <> 3457 6944 group wat id <> 10833 15374 group dec union lo_dec hi_dec group suf union lo_suf hi_suf ################## region ###################### variable a equal 4.2 label reg_hi_a variable i loop 10 label reg_hi_b variable j loop 10 variable b equal (($i)-1)*v_a variable c equal ($i)*v_a variable d equal (($j)-1)*v_a variable e equal ($j)*v_a region h_$i_$j block v_b v_c v_d v_e 45 90.035 units box next j jump wat_suf_oil.in reg_hi_b label break variable j delete next i jump wat_suf_oil.in reg_hi_a label reg_lo_a variable i loop 10 label reg_lo_b variable j loop 10 variable b equal (($i)-1)*v_a variable c equal ($i)*v_a variable d equal (($j)-1)*v_a variable e equal ($j)*v_a region l_$i_$j block v_b v_c v_d v_e 0 45 units box next j jump wat_suf_oil.in reg_lo_b label break variable j delete next i jump wat_suf_oil.in reg_lo_a ##################compute ############################################## ####com_hi_max# label com_hi_max_a variable i loop 10 label com_hi_max_b variable j loop 10 compute hi_max_$i$j hi_suf reduce/region h_$i_$j max z next j jump wat_suf_oil.in com_hi_max_b label break variable j delete next i jump wat_suf_oil.in com_hi_max_a ####com_hi_min# label com_hi_min_a variable i loop 10 label com_hi_min_b variable j loop 10 compute hi_min_$i$j hi_suf reduce/region h_$i_$j min z next j jump wat_suf_oil.in com_hi_min_b label break variable j delete next i jump wat_suf_oil.in com_hi_min_a ####com_lo_max# label com_lo_max_a variable i loop 10 label com_lo_max_b variable j loop 10 compute lo_max_$i$j lo_suf reduce/region l_$i_$j max z next j jump wat_suf_oil.in com_lo_max_b label break variable j delete next i jump wat_suf_oil.in com_lo_max_a ####com_lo_min# label com_lo_min_a variable i loop 10 label com_lo_min_b variable j loop 10 compute lo_min_$i$j lo_suf reduce/region l_$i_$j min z next j jump wat_suf_oil.in com_lo_min_b label break variable j delete next i jump wat_suf_oil.in com_lo_min_a ##################ave height ###################### ####ave_hi_max# label ave_hi_max_a variable i loop 10 label ave_hi_max_b variable j loop 9 variable b equal ($j)+1 variable ave_hi_max_$i$b equal (c_hi_max_$i$j+c_hi_max_$i$b) next j jump wat_suf_oil.in ave_hi_max_b label break variable j delete next i jump wat_suf_oil.in ave_hi_max_a label ave_hi_max_c variable i loop 9 variable b equal ($i)+1 variable ave_hi_max_sum_$i equal (v_ave_hi_max_$i9+v_ave_hi_max_$b9) next i jump wat_suf_oil.in ave_hi_max_c variable ave_hegit_hi_max equal (v_ave_hi_max_sum_9/100) ####ave_hi_min# label ave_hi_min_a variable i loop 10 label ave_hi_min_b variable j loop 9 variable b equal ($j)+1 variable ave_hi_min_$i$b equal (c_hi_min_$i$j+c_hi_min_$i$b) next j jump wat_suf_oil.in ave_hi_min_b label break variable j delete next i jump wat_suf_oil.in ave_hi_min_a label ave_hi_min_c variable i loop 9 variable b equal ($i)+1 variable ave_hi_min_sum_$i equal (v_ave_hi_min_$i9+v_ave_hi_min_$b9) next i jump wat_suf_oil.in ave_hi_min_c variable ave_hegit_hi_min equal (v_ave_hi_min_sum_9/100) ####ave_low_max# label ave_lo_max_a variable i loop 10 label ave_lo_max_b variable j loop 9 variable b equal ($j)+1 variable ave_lo_max_$i$b equal (c_lo_max_$i$j+c_lo_max_$i$b) next j jump wat_suf_oil.in ave_lo_max_b label break variable j delete next i jump wat_suf_oil.in ave_lo_max_a label ave_lo_max_c variable i loop 9 variable b equal ($i)+1 variable ave_lo_max_sum_$i equal (v_ave_lo_max_$i9+v_ave_lo_max_$b9) next i jump wat_suf_oil.in ave_lo_max_c variable ave_hegit_lo_max equal (v_ave_lo_max_sum_9/100) ####ave_low_max# label ave_lo_min_a variable i loop 10 label ave_lo_min_b variable j loop 9 variable b equal ($j)+1 variable ave_lo_min_$i$b equal (c_lo_min_$i$j+c_lo_min_$i$b) next j jump wat_suf_oil.in ave_lo_min_b label break variable j delete next i jump wat_suf_oil.in ave_lo_min_a label ave_lo_min_c variable i loop 9 variable b equal ($i)+1 variable ave_lo_min_sum_$i equal (v_ave_lo_min_$i9+v_ave_lo_min_$b9) next i jump wat_suf_oil.in ave_lo_min_c variable ave_hegit_lo_min equal (v_ave_lo_min_sum_9/100) ##################ave roughness###################### ####hi_max### label r_hi_max_a variable i loop 10 label r_hi_max_b variable j loop 9 variable b equal ($j)+1 variable r_hi_max_A_$i$b equal (c_hi_max_$i$j-v_ave_height_hi_max)^2 next j jump wat_suf_oil.in r_hi_max_b label break variable j delete next i jump wat_suf_oil.in r_hi_max_a label break variable i delete label r_hi_max_c variable i loop 9 variable b equal ($i)+1 variable r_hi_max_B_$i equal (v_r_hi_max_A_$i9+v_r_hi_max_A_$b9) next i jump wat_suf_oil.in r_hi_max_c label break variable i delete variable r_A equal sqrt(v_r_hi_max_B_9/100) ####hi_min### label r_hi_min_a variable i loop 10 label r_hi_min_b variable j loop 9 variable b equal ($j)+1 variable r_hi_min_A_$i$b equal (c_hi_min_$i$j-v_ave_height_hi_min)^2 next j jump wat_suf_oil.in r_hi_min_b label break variable j delete next i jump wat_suf_oil.in r_hi_min_a label break variable i delete label r_hi_min_c variable i loop 9 variable b equal ($i)+1 variable r_hi_min_B_$i equal (v_r_min_A_$i9+v_r_min_A_$b9) next i jump wat_suf_oil.in r_hi_min_c label break variable i delete variable r_B equal sqrt(v_r_hi_min_B_9/100) ####lo_max### label r_lo_max_a variable i loop 10 label r_lo_max_b variable j loop 9 variable b equal ($j)+1 variable r_lo_max_A_$i$b equal (c_lo_max_$i$j-v_ave_height_lo_max)^2 next j jump wat_suf_oil.in r_lo_max_b label break variable j delete next i jump wat_suf_oil.in r_lo_max_a label break variable i delete label r_lo_max_c variable i loop 9 variable b equal ($i)+1 variable r_lo_max_B_$i equal (v_r_lo_max_A_$i9+v_r_max_A_$b9) next i jump wat_suf_oil.in r_lo_max_c label break variable i delete variable r_C equal sqrt(v_r_lo_max_B_9/100) ####lo_min### label r_lo_min_a variable i loop 10 label r_lo_min_b variable j loop 9 variable b equal ($j)+1 variable r_lo_min_A_$i$b equal (c_lo_min_$i$j-v_ave_height_lo_min)^2 next j jump wat_suf_oil.in r_lo_min_b label break variable j delete next i jump wat_suf_oil.in r_lo_min_a label break variable i delete label r_lo_min_c variable i loop 9 variable b equal ($i)+1 variable r_lo_min_B_$i equal (v_r_lo_min_A_$i9+v_r_lo_min_A_$b9) next i jump wat_suf_oil.in r_lo_min_c label break variable i delete variable r_D equal sqrt(v_r_lo_min_B_9/100) ################## time averaging ############## #fix roughness all ave/time 1 500 1000 v_r_A file data.roughness ##################Tension calculation#################### compute mytemp all temp compute 1 all pressure mytemp compute str all stress/atom compute F all property/atom fx fy fz compute V all property/atom vx vy vz variable v equal vol variable str_x equal c_str[1]/v_v variable str_y equal c_str[2]/v_v variable str_z equal c_str[3]/v_v variable tension equal 0.5*(c_1[3]-0.5*(c_1[1]+c_1[2])) ##################Density distribution#################### fix 4 dec ave/spatial 1 1400000 1500000 z lower 1 density/number density/mass units box file den_dec.profile fix 5 wat ave/spatial 1 1400000 1500000 z lower 1 density/number density/mass units box file den_wat.profile fix 6 suf ave/spatial 1 1400000 1500000 z lower 1 density/number density/mass units box file den_wat.profile fix 7 all ave/spatial 1 1400000 1500000 z lower 0.1 c_str[1] units box file p_xx.profile fix 8 all ave/spatial 1 1400000 1500000 z lower 0.1 c_str[2] units box file p_yy.profile fix 9 all ave/spatial 1 1400000 1500000 z lower 0.1 c_str[3] units box file p_zz.profile ##################Diffusivity#################### compute D_h hi_suf msd compute D_l lo_suf msd ##################velocity/ensemble#################### velocity all create 315.0 4928894 rot yes dist gaussian fix 1 all nvt temp 315 315 100 fix 3 all shake 1e-5 500 0 m 1.0 a 5 ##################output#################### dump 1 all atom 500 wat_suf_oil.dump thermo 100 thermo_style custom step ke pe etotal temp vol press pxx pyy pzz v_tension c_D_h[1] c_D_h[2] c_D_h[3] c_D_h[4] c_D_l[1] c_D_l[2] c_D_l[3] c_D_l[4] v_r_A v_r_B v_r_C v_r_D ##################Equilibrations#################### timestep 1 run 10000 write_restart wat_suf_oil.restart1 timestep 2 run 1490000 write_restart wat_suf_oil.restart2 ##################Run 1#################### timestep 2 run 1500000 write_restart wat_suf_oil.restart3 ##################Run 2#################### unfix 1 fix 1 all npt temp 315 315 100 z 1.0 1.0 100 timestep 2 run 1500000 write_restart wat_suf_oil.restart4