Unstable Al-Graphene composite structure after minimization

Hello everyone,

I am simulating Aluminum atoms on graphene monolayer system and I am using Lammps 14May-2016 version.

I have placed the monolayer of graphene below and the Al atoms on top of the graphene layer. I am using LJ 12-6 potential to model the interactions between carbon carbon atoms (type 2 atoms) in graphene, EAM potential to model the Al-AL (type 1 atoms) interactions and LJ 12-6 potential to model the interactions between C and Al atoms. I obtained the LJ parameter values of AL and C from this paper (http://www.nature.com/articles/ncomms12332) who used a similar approach. I found out the LJ parameter values for C-C atoms in graphene from this paper (https://arxiv.org/abs/1209.4248). The distribution of Al atoms on graphene is random and the initial distance between the graphene layer and AL atoms (assumed to be in the same plane initially) is 5 Angstorm.

When I am running the simulations, I am seeing that right when the minimisation process starts, the graphene atoms are moving up and covering the Al atoms entirely. Some Al atoms are even passing the carbon atoms of graphene and reaching the extreme bottom of the entire system. SO this obviously is wrong and not what I want.

I put aluminum and graphene atoms in separate groups and tried minimizing separately. Wasn’t sure if that helps. For example, I used the neighbour modify to exclude the group of graphene. But even then, some graphene atoms were moving in a random fashion.

I ran the simulations separately (only AL and only pure graphene) to check if I am using the correct potentials. The energy values of pure Aluminum actually matched the data produced in “Al99 relsease notes”(http://www.ctcms.nist.gov/potentials/Download/Al-YM/Al99_releaseNotes_1.pdf). Similarly pure graphene looked stable too.

As far as I understand, data file also looks right with correct formatting. I can visualise the entire stucture in the first frame of the simulation and then the trajectories are becoming erratic. Can someone please help me point out my error? Thank you so much. I am also attaching the files here and also pasting the Input file and the Log file below

INPUT SCRIPT
echo screen
dimension 3
boundary p p p
atom_style atomic
units metal
newton on

read_data data.AlonGNR

dump 1 all custom 500 releasedall_equilibrate.lammpstrj id type x y z

##SPECIFYING SEPARATE GROUPS
group aluminum type 1
group graphene type 2

#POTENTIAL FIX
pair_style hybrid eam/alloy lj/cut 15.0
pair_coeff * * eam/alloy Al99.eam.alloy Al NULL
pair_coeff 2 2 lj/cut 0.002415 3.4
pair_coeff 1 2 lj/cut 0.0079 3.9495

timestep 0.0005

thermo 100
thermo_style custom step temp press vol pe ke etotal

neighbor 3.0 bin
neigh_modify delay 0 every 1 check yes

min_style cg
min_modify line quadratic
minimize 1.0e-20 1.0e-15 10000 1000000

LOG FILE

LAMMPS (14 May 2016)
echo screen
orthogonal box = (-300.5 -300.5 -300.5) to (300.5 300.5 300.5)
1 by 1 by 1 MPI processor grid
reading atoms …
1299 atoms
291 atoms in group aluminum
1008 atoms in group graphene
Neighbor list info …
3 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 18
ghost atom cutoff = 18
binsize = 9 -> bins = 67 67 67
Memory usage per processor = 6.00621 Mbytes
Memory usage per processor = 6.00621 Mbytes
Step Temp Press Volume PotEng KinEng TotEng
0 0 15113.579 2.170818e+08 510334.96 0 510334.96
100 0 19.685773 2.170818e+08 38.95888 0 38.95888
200 0 0.30271624 2.170818e+08 -787.89263 0 -787.89263
300 0 0.011315706 2.170818e+08 -827.28911 0 -827.28911
400 0 6.1657926e-05 2.170818e+08 -839.47905 0 -839.47905
500 0 -0.038462493 2.170818e+08 -845.86523 0 -845.86523
600 0 0.00042508389 2.170818e+08 -852.12929 0 -852.12929
700 0 -0.010537667 2.170818e+08 -853.72592 0 -853.72592
800 0 -0.051599009 2.170818e+08 -857.18755 0 -857.18755
900 0 -0.0069230993 2.170818e+08 -861.40817 0 -861.40817
1000 0 -0.0090800681 2.170818e+08 -862.27093 0 -862.27093
1100 0 -0.015262716 2.170818e+08 -863.37896 0 -863.37896
1200 0 -0.0019275283 2.170818e+08 -864.00519 0 -864.00519
1300 0 -0.0082502485 2.170818e+08 -864.42211 0 -864.42211
1400 0 -0.0024599201 2.170818e+08 -864.77653 0 -864.77653
1500 0 0.00077326942 2.170818e+08 -865.07196 0 -865.07196
1600 0 -0.0084424461 2.170818e+08 -865.52471 0 -865.52471
1700 0 -0.0040755565 2.170818e+08 -865.81634 0 -865.81634
1800 0 -0.0026693299 2.170818e+08 -866.0683 0 -866.0683
1900 0 -0.000277965 2.170818e+08 -866.36448 0 -866.36448
2000 0 -0.0048051979 2.170818e+08 -866.91167 0 -866.91167
2100 0 -0.0069152878 2.170818e+08 -867.17589 0 -867.17589
2200 0 -0.0026399524 2.170818e+08 -867.48576 0 -867.48576
2300 0 -0.0059410845 2.170818e+08 -867.77876 0 -867.77876
2400 0 -0.0061156298 2.170818e+08 -867.97923 0 -867.97923
2500 0 -0.0044131256 2.170818e+08 -868.1967 0 -868.1967
2600 0 0.00015939299 2.170818e+08 -868.57148 0 -868.57148
2700 0 -0.0037714053 2.170818e+08 -868.80394 0 -868.80394
2800 0 -0.0024767818 2.170818e+08 -869.02162 0 -869.02162
2900 0 -0.0033508961 2.170818e+08 -869.2763 0 -869.2763
3000 0 -0.0010463404 2.170818e+08 -869.44043 0 -869.44043
3100 0 0.0002039706 2.170818e+08 -869.56952 0 -869.56952
3200 0 -0.0033533033 2.170818e+08 -869.6708 0 -869.6708
3300 0 -0.00029285418 2.170818e+08 -869.77735 0 -869.77735
3400 0 -0.00022362094 2.170818e+08 -869.89767 0 -869.89767
3500 0 -0.0012978423 2.170818e+08 -870.03196 0 -870.03196
3600 0 0.00014285219 2.170818e+08 -870.12858 0 -870.12858
3700 0 8.5818685e-05 2.170818e+08 -870.16958 0 -870.16958
3800 0 -0.001689599 2.170818e+08 -870.19625 0 -870.19625
3900 0 -0.00047924173 2.170818e+08 -870.21572 0 -870.21572
4000 0 -0.00023710367 2.170818e+08 -870.23138 0 -870.23138
4100 0 -0.00040231348 2.170818e+08 -870.24488 0 -870.24488
4200 0 0.00013066863 2.170818e+08 -870.25642 0 -870.25642
4251 0 0.00032438999 2.170818e+08 -870.26287 0 -870.26287
Loop time of 54.8002 on 1 procs for 4251 steps with 1299 atoms

99.9% CPU use with 1 MPI tasks x no OpenMP threads
99.9% CPU use with 1 MPI tasks x no OpenMP threads

Minimization stats:
Stopping criterion = linesearch alpha is zero
Energy initial, next-to-last, final =
510334.957157 -870.262871486 -870.262871486
Force two-norm initial, final = 27659.1 0.0322006
Force max component initial, final = 2948.92 0.00757888
Final line search alpha, max atom move = 7.62939e-06 5.78222e-08
Iterations, force evaluations = 4251 8075

MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total

in.equilibrate (1.22 KB)

data.AlonGNR (49.9 KB)

Your box is enormously large for such as small system. You basically have graphene and Al sheets isolated in vacuum. I suggest you fix the box size first (it should be at least periodic in two directions) and try again.

Ray

Hello,

Thank you for your advice. I tried it but I am observing the same phenomenon as before. The graphene atoms are moving a lot right after the minimization starts and the entire structure is becoming random. Can you please help? Thank you so much.

I made the following changes:

  1. Graphene is on the x-y plane initially. Al atoms are 5Angstorm above graphene in the Z direction. The maximum x-dimension is around 49.12 Angstorm, the maximum y-dimension also around 49.12 Angstorm and the maximum z-dimension is at 5 Angstorm. So I reduced the box dimensions to

-3.500000 55.500000 xlo xhi
-3.500000 55.500000 ylo yhi
-3.500000 9.000000 zlo zhi

  1. I kept periodic boundary conditions in both x and y direction. But shrink wrapping in the z direction (boundary p p s). I did this because when the AL atoms move, the box face should encompass the atoms.

My input file looks like this:

echo screen

dimension 3
boundary p p s
atom_style atomic
units metal
newton on

read_data data.AlonGNR

dump 1 all custom 50 releasedall_equilibrate.lammpstrj id type x y z

##SPECIFYING SEPARATE GROUPS
group aluminum type 1
group graphene type 2

#POTENTIAL FIX
pair_style hybrid eam/alloy lj/cut 15.0
pair_coeff * * eam/alloy Al99.eam.alloy Al NULL
pair_coeff 2 2 lj/cut 0.002415 3.4
#pair_coeff 2 2 lj/cut 0.00239 3.4
pair_coeff 1 2 lj/cut 0.0079 3.9495

timestep 0.0005

thermo 100
thermo_style custom step temp press vol pe ke etotal

neighbor 3.0 bin
neigh_modify delay 0 every 1 check yes

min_style cg
min_modify line quadratic
minimize 1.0e-20 1.0e-15 10000 1000000

The log file looks like this :

LAMMPS (14 May 2016)
echo screen
orthogonal box = (-3.5 -3.5 -3.5) to (55.5 55.5 9)
1 by 1 by 1 MPI processor grid
reading atoms …
1299 atoms
291 atoms in group aluminum
1008 atoms in group graphene
Neighbor list info …
3 neighbor list requests
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 18
ghost atom cutoff = 18
binsize = 9 -> bins = 7 7 1
Memory usage per processor = 4.62981 Mbytes
Step Temp Press Volume PotEng KinEng TotEng
0 0 1.8500571e+08 17733.954 510334.93 0 510334.93
100 0 172392.15 27165.741 127.77501 0 127.77501
200 0 1918.0886 51237.661 -783.26871 0 -783.26871
300 0 382.23504 59397.896 -825.24934 0 -825.24934
400 0 79.120579 63375.482 -838.87291 0 -838.87291
500 0 -96.037157 69045.114 -847.52414 0 -847.52414
600 0 -69.272564 72982.33 -851.63434 0 -851.63434
700 0 -116.91491 72564.847 -855.60575 0 -855.60575
800 0 -63.992407 73439.519 -857.52915 0 -857.52915
900 0 -55.975004 76947.202 -858.208 0 -858.208
1000 0 -77.230925 78775.991 -859.32177 0 -859.32177
1100 0 -44.332754 77763.106 -860.26705 0 -860.26705
1200 0 -40.807617 82227.268 -860.97219 0 -860.97219
1300 0 -54.159237 79551.356 -862.60004 0 -862.60004
1400 0 -54.690979 79785.111 -864.31383 0 -864.31383
1500 0 -53.102394 79088.753 -864.79856 0 -864.79856
1600 0 -58.001486 75761.652 -865.20282 0 -865.20282
1700 0 -65.968566 77053.257 -865.49677 0 -865.49677
1800 0 -47.216076 78799.809 -865.80974 0 -865.80974
1900 0 -58.688417 81729.942 -866.13022 0 -866.13022
2000 0 -51.054225 80370.793 -866.39426 0 -866.39426
2100 0 -61.655747 81164.668 -866.7504 0 -866.7504
2200 0 -66.222885 80697.114 -866.94125 0 -866.94125
2300 0 -62.37379 81242.137 -867.12054 0 -867.12054
2400 0 -49.852986 81274.232 -867.37439 0 -867.37439
2500 0 -53.878818 81100.588 -867.46413 0 -867.46413
2600 0 -49.275074 80914.221 -867.57309 0 -867.57309
2700 0 -50.603457 81098.714 -867.79857 0 -867.79857
2800 0 -47.781673 81444.248 -867.91014 0 -867.91014
2900 0 -49.37745 81088.519 -868.06062 0 -868.06062
3000 0 -50.971585 81088.519 -868.21311 0 -868.21311
3100 0 -48.617434 81730.82 -868.26781 0 -868.26781
3200 0 -44.033542 82099.258 -868.34591 0 -868.34591
3300 0 -46.629328 81902.534 -868.40718 0 -868.40718
3400 0 -52.762022 82282.51 -868.46422 0 -868.46422
3500 0 -50.480691 81976.73 -868.51979 0 -868.51979
3600 0 -45.274664 82166.556 -868.58768 0 -868.58768
3700 0 -48.531947 81840.59 -868.68222 0 -868.68222
3800 0 -48.242479 81853.914 -868.74255 0 -868.74255
3900 0 -50.629343 81625.681 -868.78089 0 -868.78089
4000 0 -45.479645 81653.384 -868.80925 0 -868.80925
4100 0 -43.695707 81948.165 -868.83479 0 -868.83479
4200 0 -45.488492 82055.815 -868.90035 0 -868.90035
4300 0 -42.560461 82357.63 -868.94337 0 -868.94337
4400 0 -42.099108 82426.577 -868.96649 0 -868.96649
4500 0 -40.555375 82426.577 -868.98376 0 -868.98376
4600 0 -38.904696 83432.183 -869.01388 0 -869.01388
4700 0 -46.664121 83973.02 -869.05276 0 -869.05276
4800 0 -46.883797 84104.138 -869.09732 0 -869.09732
4900 0 -49.252082 84371.295 -869.13585 0 -869.13585
5000 0 -46.560478 84306.4 -869.15976 0 -869.15976
5100 0 -47.416231 84476.107 -869.17001 0 -869.17001
5200 0 -47.643208 84476.107 -869.17932 0 -869.17932
5300 0 -46.535418 83790.534 -869.19348 0 -869.19348
5400 0 -46.149297 83840.854 -869.21739 0 -869.21739
5500 0 -41.107091 83631.98 -869.23363 0 -869.23363
5600 0 -39.982388 83631.98 -869.24236 0 -869.24236
5633 0 -38.460002 83631.98 -869.24419 0 -869.24419
Loop time of 65.8122 on 1 procs for 5633 steps with 1299 atoms

100.0% CPU use with 1 MPI tasks x no OpenMP threads

Minimization stats:
Stopping criterion = linesearch alpha is zero
Energy initial, next-to-last, final =
510334.932547 -869.244193954 -869.244193954
Force two-norm initial, final = 27659.1 0.0240214
Force max component initial, final = 2948.92 0.00783695
Final line search alpha, max atom move = 1.52588e-05 1.19582e-07
Iterations, force evaluations = 5633 10837

MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total

Hello,

Thank you for your advice. I tried it but I am observing the same
phenomenon as before. The graphene atoms are moving a lot right after the
minimization starts and the entire structure is becoming random. Can you
please help? Thank you so much.

​why *should* the graphene structure be stable? you have only non-bonded LJ
interactions between the carbon atoms.​ there is nothing that would
stabilize a sheet structure.

bad force field -> bad geometry. GI-GO.

axel.

1 Like

Did you try using pair style airebo. This potential is more suitable for simulation of graphene and nano tubes. You can perhaps continue using a LJ potential for the Al-graphene interaction.

Manoj