Add fix elstop to USER-MISC
Implements inelastic energy loss for fast particles in solids.
This commit is contained in:
@ -61,6 +61,7 @@ OPT.
|
||||
"edpd/source"_fix_dpd_source.html,
|
||||
"efield"_fix_efield.html,
|
||||
"ehex"_fix_ehex.html,
|
||||
"elstop"_fix_elstop.html,
|
||||
"enforce2d (k)"_fix_enforce2d.html,
|
||||
"eos/cv"_fix_eos_cv.html,
|
||||
"eos/table"_fix_eos_table.html,
|
||||
|
||||
BIN
doc/src/Eqs/fix_elstop.jpg
Normal file
BIN
doc/src/Eqs/fix_elstop.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
13
doc/src/Eqs/fix_elstop.tex
Normal file
13
doc/src/Eqs/fix_elstop.tex
Normal file
@ -0,0 +1,13 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
{\vec F}_i = {\vec F}^{0}_i - \frac{{\vec v}_i}{\|\vec{v}_i\|}\cdot S_e
|
||||
$$
|
||||
|
||||
\end{document}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -199,6 +199,7 @@ accelerated styles exist.
|
||||
"edpd/source"_fix_dpd_source.html -
|
||||
"efield"_fix_efield.html - impose electric field on system
|
||||
"ehex"_fix_ehex.html - enhanced heat exchange algorithm
|
||||
"elstop"_fix_elstop.html - electronic stopping power as a friction force
|
||||
"enforce2d"_fix_enforce2d.html - zero out z-dimension velocity and force
|
||||
"eos/cv"_fix_eos_cv.html -
|
||||
"eos/table"_fix_eos_table.html -
|
||||
|
||||
163
doc/src/fix_elstop.txt
Normal file
163
doc/src/fix_elstop.txt
Normal file
@ -0,0 +1,163 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Commands_all.html)
|
||||
|
||||
:line
|
||||
|
||||
fix elstop command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix ID group-ID elstop Ecut file keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
elstop = style name of this fix command :l
|
||||
Ecut = minimum kinetic energy for electronic stopping (energy units) :l
|
||||
file = name of the file containing the electronic stopping power table :l
|
||||
zero or more keyword/value pairs may be appended to args :l
|
||||
keyword = {region} or {minneigh} :l
|
||||
{region} value = region-ID
|
||||
region-ID = region, whose atoms will be affected by this fix
|
||||
{minneigh} value = minneigh
|
||||
minneigh = minimum number of neighbors for atoms to have elstop applied :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix el all elstop 10.0 elstop-table.txt
|
||||
fix el all elstop 10.0 elstop-table.txt minneigh 3
|
||||
fix el mygroup elstop 1.0 elstop-table.txt region bulk :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This fix implements inelastic energy loss for fast projectiles in solids. It
|
||||
applies a friction force to fast moving atoms to slow them down due to
|
||||
"electronic stopping"_#elstopping (energy lost via electronic collisions per
|
||||
unit of distance). This fix should be used for simulation of irradiation
|
||||
damage or ion implantation, where the ions can lose noticeable amounts of
|
||||
energy from electron excitations. If the electronic stopping power is not
|
||||
considered, the simulated range of the ions can be severely overestimated
|
||||
("Nordlund98"_#Nordlund98, "Nordlund95"_#Nordlund95).
|
||||
|
||||
The electronic stopping is implemented by applying a friction force
|
||||
to each atom as:
|
||||
|
||||
:c,image(Eqs/fix_elstop.jpg)
|
||||
|
||||
where \(\vec\{F\}_i\) is the resulting total force on the atom. \(\vec\{F\}^0_i\)
|
||||
is the original force applied to the atom, \(\vec\{v\}_i\) is its velocity and
|
||||
\(S_e\) is the stopping power of the ion.
|
||||
|
||||
NOTE: In addition to electronic stopping, atomic cascades and irradiation
|
||||
simulations require the use of an adaptive timestep (see
|
||||
"fix dt/reset"_fix_dt_reset.html) and the repulsive ZBL potential (see
|
||||
"ZBL"_pair_zbl.html potential) or similar. Without these settings the
|
||||
interaction between the ion and the target atoms will be faulty. It is also
|
||||
common to use in such simulations a thermostat ("fix_nvt"_fix_nh.html) in
|
||||
the borders of the simulation cell.
|
||||
|
||||
NOTE: This fix removes energy from fast projectiles without depositing it as a
|
||||
heat to the simulation cell. Such implementation might lead to the unphysical
|
||||
results when the amount of energy deposited to the electronic system is large,
|
||||
e.g. simulations of Swift Heavy Ions (energy per nucleon of 100 keV/amu or
|
||||
higher) or multiple projectiles. You could compensate energy loss by coupling
|
||||
bulk atoms with some thermostat or control heat transfer between electronic and
|
||||
atomic subsystems with the two-temperature model ("fix_ttm"_fix_ttm.html).
|
||||
|
||||
At low velocities the electronic stopping is negligible. The electronic
|
||||
friction is not applied to atoms whose kinetic energy is smaller than {Ecut},
|
||||
or smaller than the lowest energy value given in the table in {file}.
|
||||
Electronic stopping should be applied only when a projectile reaches bulk
|
||||
material. This fix scans neighbor list and excludes atoms with fewer than
|
||||
{minneigh} neighbors (by default one). If the pair potential cutoff is large,
|
||||
minneigh should be increased, though not above the number of nearest neighbors
|
||||
in bulk material. An alternative is to disable the check for neighbors by
|
||||
setting {minneigh} to zero and using the {region} keyword. This is necessary
|
||||
when running simulations of cluster bombardment.
|
||||
|
||||
If the {region} keyword is used, the atom must also be in the specified geometric
|
||||
"region"_region.html in order to have electronic stopping applied to it. This is
|
||||
useful if the position of the bulk material is fixed. By default the electronic
|
||||
stopping is applied everywhere in the simulation cell.
|
||||
|
||||
:line
|
||||
|
||||
The energy ranges and stopping powers are read from the file {file}.
|
||||
Lines starting with {#} and empty lines are ignored. Otherwise each
|
||||
line must contain exactly [N+1] numbers, where [N] is the number of atom
|
||||
types in the simulation.
|
||||
|
||||
The first column is the energy for which the stopping powers on that
|
||||
line apply. The energies must be sorted from the smallest to the largest.
|
||||
The other columns are the stopping powers \(S_e\) for each atom type,
|
||||
in ascending order, in force "units"_units.html. The stopping powers for
|
||||
intermediate energy values are calculated with linear interpolation between
|
||||
2 nearest points.
|
||||
|
||||
For example:
|
||||
|
||||
# This is a comment
|
||||
# atom-1 atom-2
|
||||
# eV eV/Ang eV/Ang # units metal
|
||||
10 0 0
|
||||
250 60 80
|
||||
750 100 150 :pre
|
||||
|
||||
|
||||
If an atom which would have electronic stopping applied to it has a
|
||||
kinetic energy higher than the largest energy given in {file}, LAMMPS
|
||||
will exit with an error message.
|
||||
|
||||
The stopping power depends on the energy of the ion and the target
|
||||
material. The electronic stopping table can be obtained from
|
||||
scientific publications, experimental databases or by using
|
||||
"SRIM"_#SRIM software. Other programs such as "CasP"_#CasP or
|
||||
"PASS"_#PASS can calculate the energy deposited as a function
|
||||
of the impact parameter of the ion; these results can be used
|
||||
to derive the stopping power.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
No information about this fix is written to "binary restart
|
||||
files"_restart.html.
|
||||
|
||||
The "fix_modify"_fix_modify.html options are not supported.
|
||||
|
||||
This fix computes a global scalar, which can be accessed by various
|
||||
"output commands"_Howto_output.html. The scalar is the total energy
|
||||
loss from electronic stopping applied by this fix since the start of
|
||||
the latest run. It is considered "intensive".
|
||||
|
||||
The {start/stop} keywords of the "run"_run.html command have no effect
|
||||
on this fix.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This pair style is part of the USER-MISC package. It is only enabled if
|
||||
LAMMPS was built with that package. See the "Build package"_Build_package.html
|
||||
doc page for more info.
|
||||
|
||||
[Default:]
|
||||
|
||||
The default is no limitation by region, and minneigh = 1.
|
||||
|
||||
:line
|
||||
:link(elstopping)
|
||||
[(electronic stopping)] Wikipedia - Electronic Stopping Power: https://en.wikipedia.org/wiki/Stopping_power_%28particle_radiation%29
|
||||
|
||||
:link(Nordlund98)
|
||||
[(Nordlund98)] Nordlund, Kai, et al. Physical Review B 57.13 (1998): 7556.
|
||||
|
||||
:link(Nordlund95)
|
||||
[(Nordlund95)] Nordlund, Kai. Computational materials science 3.4 (1995): 448-456.
|
||||
|
||||
:link(SRIM)
|
||||
[(SRIM)] SRIM webpage: http://www.srim.org/
|
||||
|
||||
:link(CasP)
|
||||
[(CasP)] CasP webpage: https://www.helmholtz-berlin.de/people/gregor-schiwietz/casp_en.html
|
||||
|
||||
:link(PASS)
|
||||
[(PASS)] PASS webpage: https://www.sdu.dk/en/DPASS
|
||||
@ -40,6 +40,7 @@ Fixes :h1
|
||||
fix_dt_reset
|
||||
fix_efield
|
||||
fix_ehex
|
||||
fix_elstop
|
||||
fix_enforce2d
|
||||
fix_eos_cv
|
||||
fix_eos_table
|
||||
|
||||
@ -264,6 +264,7 @@ fix_drude_transform.html
|
||||
fix_dt_reset.html
|
||||
fix_efield.html
|
||||
fix_ehex.html
|
||||
fix_elstop.html
|
||||
fix_enforce2d.html
|
||||
fix_eos_cv.html
|
||||
fix_eos_table.html
|
||||
|
||||
Reference in New Issue
Block a user