The tensile simulation of polymer chains

My research topic focuses on the tensile simulation of polymer chains. The bottom part of the model consists of AP molecules, while the upper part contains cross-linker molecules and HTPB molecular chains. I have already completed cross-linking bond formation for the model. Since the model adopts a layered structure, I used the linear command to perform tensile deformation and recorded the stress in the bottom region to serve as the equivalent tensile stress. However, the obtained stress values are too small and negative. I would like to ask how I should adjust my simulation code.

units real

time:fs; distance: Angstrom; energy: Kcal/mol; force:Kcal/mol/A; Temp:K; P:atomspheres

atom_style full
boundary p p p
timestep 1

bond_style harmonic
angle_style harmonic
dihedral_style harmonic
improper_style cvff

pair_style lj/cut/coul/long 12.0

read_data end.data extra/bond/per/atom 4 extra/angle/per/atom 7 extra/special/per/atom 30
#read_restart relax.res
#reset_timestep 0
kspace_style ewald 1.0e-4
group AP molecule 1
group mix subtract all AP
region 1 block INF INF 90 95 INF INF
group up region 1
group rig intersect mix up

region 2 block INF INF -10 -5 INF INF
group bottom region 2
group mobile subtract mix rig bottom
###########################################################################################
special_bonds lj/coul 0 1 1

#############################################################################################################
compute peratom all stress/atom NULL #virial
##################################################################################################################
fix 11 all npt temp 298 298 100 iso 1 1 1000 drag 2
run 10000
unfix 11

compute bot_force bottom reduce sum fx fy fz

fix 1 bottom move linear 0 0 0 units box

fix 2 rig move linear 0 0.0002 0 units box
fix 3 mobile nvt temp 298.0 298.0 100 drag 2

compute 9 rig com
compute 10 mobile temp

dump 1 all cfg 2000 dump.*.cfg mass type xs ys zs id type x y z
dump_modify 1 sort id
#dump_modify 1 element Cl O N H C H O H C C C N C C O
thermo_style custom step temp c_10 press lx ly lz bonds c_9[1] c_9[2] c_9[3]
thermo 2000

#neighbor 2.5 bin
#neigh_modify one 10000
#################################################################################
#minimize 1.0e-6 1.0e-6 1000 1000
#velocity all create 298.0 23456789 dist gaussian mom yes rot yes units box
#fix 21 mix nvt temp 298.0 298.0 100 drag 2
#run 50000
#unfix 21
#write_data relax.data

#fix 21 all npt temp 298 998 100 iso 1 0.8 1000 drag 2

variable A0 equal 1540.0
variable stress_y equal c_bot_force[2]/v_A0
fix 25 all ave/time 1 200 200 c_bot_force[2] v_stress_y file stress_y.dat

restart 10000 tensile.restart
run 50000

unfix 2
fix 4 rig move linear 0 0 0 units box
#velocity rig set 0 0.0 0 sum yes units box
run 150000
write_data tensile.data
write_restart tensile.res

Hi @zby0326,

Please have a look at the forum guidelines and documentation of the commands you use. You are likely to find help and suggestion on how to better understand what is going on and solve your issue yourself. Also please, learn how to format your file using Markdown syntax so that it is easily readable for other people here.

There are no linear command. You are using the linear keyword of the fix move command. This is an uncommon way to proceed to perform tensile strain. Some of them are also used with 0 0 0 parameters which makes them plain useless. Please have a look at both the documentation for the move and deform commands to understand how tensile strain simulations are usually performed in MD.