From ea615ff44447fb1df12c8234134ecf3a44a99137 Mon Sep 17 00:00:00 2001 From: sjplimp Date: Mon, 6 Apr 2009 15:58:28 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@2726 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- doc/Eqs/fix_ttm.jpg | Bin 0 -> 3711 bytes doc/Eqs/fix_ttm.tex | 15 ++++ doc/fix_ttm.html | 178 ++++++++++++++++++++++++++++++++++++++++++++ doc/fix_ttm.txt | 171 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 364 insertions(+) create mode 100644 doc/Eqs/fix_ttm.jpg create mode 100644 doc/Eqs/fix_ttm.tex create mode 100644 doc/fix_ttm.html create mode 100644 doc/fix_ttm.txt diff --git a/doc/Eqs/fix_ttm.jpg b/doc/Eqs/fix_ttm.jpg new file mode 100644 index 0000000000000000000000000000000000000000..68f7fdb124467588e0cc9c0315492989ae0e8300 GIT binary patch literal 3711 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 literal 0 HcmV?d00001 diff --git a/doc/Eqs/fix_ttm.tex b/doc/Eqs/fix_ttm.tex new file mode 100644 index 0000000000..d5a3238f82 --- /dev/null +++ b/doc/Eqs/fix_ttm.tex @@ -0,0 +1,15 @@ +\documentclass[12pt]{article} + +\begin{document} + +$$ + C_e \rho_e \frac{\partial T_e}{\partial t} = + \bigtriangledown (\kappa_e \bigtriangledown T_e) - + g_p (T_e - T_a) + g_s T_a' +$$ + +\end{document} + + + + diff --git a/doc/fix_ttm.html b/doc/fix_ttm.html new file mode 100644 index 0000000000..2725ffca07 --- /dev/null +++ b/doc/fix_ttm.html @@ -0,0 +1,178 @@ + +
LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands +
+ + + + + + +
+ +

fix ttm command +

+

Syntax: +

+
fix ID group-ID ttm seed e_specific_heat e_density e_thermal_conductivity gamma_p gamma_s v_0 nxnodes nynodes nznodes T_infile N T_outfile 
+
+
  • ID, group-ID are documented in fix command +
  • ttm = style name of this fix command +
  • seed = random number seed to use for white noise (positive integer) +
  • e_specific_heat = electronic specific heat (energy/(electron*temperature) units) +
  • e_density = electronic density (electrons/volume units) +
  • e_thermal_conductivity = electronic thermal conductivity (energy/(time*distance*temperature) units) +
  • gamma_p = friction coefficient due to electron-ion interactions (mass/time units) +
  • gamma_s = friction coefficient due to electronic stopping (mass/time units) +
  • v_0 = electronic stopping critical velocity (velocity units) +
  • nxnodes = number of thermal solve grid points in the x-direction (positive integer) +
  • nynodes = number of thermal solve grid points in the y-direction (positive integer) +
  • nznodes = number of thermal solve grid points in the z-direction (positive integer) +
  • T_infile = filename to read initial electronic temperature from +
  • N = dump TTM temperatures every this many timesteps, 0 = no dump +
  • T_outfile = filename to write TTM temperatures to (only needed if N > 0) +
+

Examples: +

+
fix 2 all ttm 699489 1.0 1.0 10 0.1 0.0 2.0 1 12 1 initialTs 1000 T.out
+fix 2 all ttm 123456 1.0 1.0 1.0 1.0 1.0 5.0 5 5 5 Te.in 1 Te.out 
+
+

Description: +

+

Use a two-temperature model (TTM) to represent heat transfer through +and between electronic and atomic subsystems. LAMMPS models the +atomic subsystem as usual with a molecular dynamics model and the +classical force field specified by the user, but the electronic +subsystem is modeled as a continuum, or a background "gas", on a +regular grid. Energy can be transferred spatially within the grid +representing the electrons. Energy can also be transferred between +the electronic and the atomic subsystems. The algorithm underlying +this fix was derived by D. M. Duffy and A. M. Rutherford and is +discussed in two J Physics: Condensed Matter papers: (Duffy) +and (Rutherford). They used this algorithm in cascade +simulations where a primary knock-on atom (PKA) was initialized with a +high velocity to simulate a radiation event. +

+

Heat transfer between the electronic and atomic subsystems is carried +out via an inhomogeneous Langevin thermostat. This thermostat differs +from the regular Langevin thermostat (fix +langevin) in three important ways. First, the +Langevin thermostat is applied uniformly to all atoms in the +user-specified group, whereas the TTM fix applies Langevin +thermostatting locally within the volumes represented by the +user-specified grid points. Second, the Langevin thermostat couples +the temperature of the atoms to an infinite heat reservoir, whereas +the heat reservoir for fix TTM is finite and represents the local +electrons. Third, the TTM fix allows users to specify not just one +friction coefficient, but rather two independent friction +coefficients: one for the electron-ion interactions and one for +electron stopping. +

+

When the friction coefficient due to electron stopping, gamma_s, is +non-zero, electron stopping effects are included for atoms moving +faster than the electron stopping critical velocity, v_0. For +further details about this algorithm, see (Duffy) and +(Rutherford). +

+

Energy transport within the electronic subsystem is solved according +to the heat diffusion equation with added source terms for heat +transfer between the subsystems: +

+
+
+

where C is the specific heat, rho is the density, kappa is the thermal +conductivity, and the "e" and "a" subscripts represent the electronic +and atomic subsystems respectively. g_p is the coupling constant for +the electron-ion interaction, and g_s is the electron stopping +coupling parameter. The form of the heat diffusion equation used here +is almost the same as that in equation 6 of (Duffy), with the +exception that the electronic density is explicitly reprensented, +rather than being part of the the specific heat parameter. +

+

Currently, this fix assumes that none of the user-supplied parameters +will vary with temperature. This assumption can be relaxed by +modifying the source code to include the desired temperature +dependency and functional form for any of the parameters. Note that +(Duffy) used a tanh() functional form for the temperature +dependence of the electronic specific heat, but ignored temperature +dependencies of any of the other parameters. +

+

This fix requires use of periodic boundary conditions and a 3D +simulation. Periodic boundary conditions are also used in the heat +equation solve for the electronic subsystem. This varies from the +approach of (Rutherford) where the atomic subsystem was +embedded within a larger continuum representation of the electronic +subsystem. +

+

The initial electronic temperature input file, T_infile, is a text +file LAMMPS reads in with no header and with four numeric columns +(ix,iy,iz,Temp) and with a number of rows equal to the number of +user-specified grid points (nxnodes*nynodes*nznodes). The ix,iy,iz +are node indices from 0 to nxnodes-1, etc. For example, the initial +electronic temperatures on a 1 by 2 by 3 grid could be specified in a +T_infile as follows: +

+
0 0 0 1.0
+0 0 1 1.0
+0 0 2 1.0
+0 1 0 2.0
+0 1 1 2.0
+0 1 2 2.0 
+
+

where the electronic temperatures along the nynodes=0 plane have been +set to 1.0, and the electronic temperatures along the nynodes=1 plane +have been set to 2.0. The order of lines in this file is unimportant. +If all the nodal values are not specified, LAMMPS will generate an +error. +

+

The temperature output file, T_oufile, is created and written by +this fix. Temperatures for both the electronic and atomic subsystems +at every node and every N timesteps are output. If N is specified as +zero, no output is generated, and no output filename is needed. The +format of the output is as follows. One long line is written every +output timestep. The timestep itself is given in the first column. +The next nxnodes*nynodes*nznodes columns contain the temperatures for +the atomic subsystem, and the final nxnodes*nynodes*nznodes columns +contain the temperatures for the electronic subsystem. The ordering +of the nxnodes*nynodes*nznodes columns is with the z index varing +fastest, y the next fastest, and x the slowest. +

+

This fix does not change the coordinates of its atoms; it only scales +their velocities. Thus a time integration fix (e.g. fix +nve) should still be used to time integrate the affected +atoms. This fix should not normally be used on atoms that have their +temperature controlled by another fix - e.g. fix nvt or +fix langevin. +

+

Restart, fix_modify, output, run start/stop, minimize info: +

+

No information about this fix is written to binary restart +files. None of the fix_modify options +are relevant to this fix. No global scalar or vector or per-atom +quantities are stored by this fix for access by various output +commands. No parameter of this fix can be +used with the start/stop keywords of the run command. +This fix is not invoked during energy minimization. +

+

Restrictions: +

+

This fix can only be used for 3d simulations and orthogonal +simlulation boxes. You must use periodic boundary +conditions with this fix. +

+

Related commands: +

+

fix langevin, fix dt/reset +

+

Default: none +

+ + +

(Duffy) D M Duffy and A M Rutherford, J. Phys.: Condens. Matter, 19, +016207-016218 (2007). +

+ + +

(Rutherford) A M Rutherford and D M Duffy, J. Phys.: +Condens. Matter, 19, 496201-496210 (2007). +

+ diff --git a/doc/fix_ttm.txt b/doc/fix_ttm.txt new file mode 100644 index 0000000000..9937bf78cc --- /dev/null +++ b/doc/fix_ttm.txt @@ -0,0 +1,171 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +fix ttm command :h3 + +[Syntax:] + +fix ID group-ID ttm seed e_specific_heat e_density e_thermal_conductivity gamma_p gamma_s v_0 nxnodes nynodes nznodes T_infile N T_outfile :pre + +ID, group-ID are documented in "fix"_fix.html command +ttm = style name of this fix command +seed = random number seed to use for white noise (positive integer) +e_specific_heat = electronic specific heat (energy/(electron*temperature) units) +e_density = electronic density (electrons/volume units) +e_thermal_conductivity = electronic thermal conductivity (energy/(time*distance*temperature) units) +gamma_p = friction coefficient due to electron-ion interactions (mass/time units) +gamma_s = friction coefficient due to electronic stopping (mass/time units) +v_0 = electronic stopping critical velocity (velocity units) +nxnodes = number of thermal solve grid points in the x-direction (positive integer) +nynodes = number of thermal solve grid points in the y-direction (positive integer) +nznodes = number of thermal solve grid points in the z-direction (positive integer) +T_infile = filename to read initial electronic temperature from +N = dump TTM temperatures every this many timesteps, 0 = no dump +T_outfile = filename to write TTM temperatures to (only needed if N > 0) :ul + +[Examples:] + +fix 2 all ttm 699489 1.0 1.0 10 0.1 0.0 2.0 1 12 1 initialTs 1000 T.out +fix 2 all ttm 123456 1.0 1.0 1.0 1.0 1.0 5.0 5 5 5 Te.in 1 Te.out :pre + +[Description:] + +Use a two-temperature model (TTM) to represent heat transfer through +and between electronic and atomic subsystems. LAMMPS models the +atomic subsystem as usual with a molecular dynamics model and the +classical force field specified by the user, but the electronic +subsystem is modeled as a continuum, or a background "gas", on a +regular grid. Energy can be transferred spatially within the grid +representing the electrons. Energy can also be transferred between +the electronic and the atomic subsystems. The algorithm underlying +this fix was derived by D. M. Duffy and A. M. Rutherford and is +discussed in two J Physics: Condensed Matter papers: "(Duffy)"_#Duffy +and "(Rutherford)"_#Rutherford. They used this algorithm in cascade +simulations where a primary knock-on atom (PKA) was initialized with a +high velocity to simulate a radiation event. + +Heat transfer between the electronic and atomic subsystems is carried +out via an inhomogeneous Langevin thermostat. This thermostat differs +from the regular Langevin thermostat ("fix +langevin"_fix_langevin.html) in three important ways. First, the +Langevin thermostat is applied uniformly to all atoms in the +user-specified group, whereas the TTM fix applies Langevin +thermostatting locally within the volumes represented by the +user-specified grid points. Second, the Langevin thermostat couples +the temperature of the atoms to an infinite heat reservoir, whereas +the heat reservoir for fix TTM is finite and represents the local +electrons. Third, the TTM fix allows users to specify not just one +friction coefficient, but rather two independent friction +coefficients: one for the electron-ion interactions and one for +electron stopping. + +When the friction coefficient due to electron stopping, {gamma_s}, is +non-zero, electron stopping effects are included for atoms moving +faster than the electron stopping critical velocity, {v_0}. For +further details about this algorithm, see "(Duffy)"_#Duffy and +"(Rutherford)"_#Rutherford. + +Energy transport within the electronic subsystem is solved according +to the heat diffusion equation with added source terms for heat +transfer between the subsystems: + +:c,image(Eqs/fix_ttm.jpg) + +where C is the specific heat, rho is the density, kappa is the thermal +conductivity, and the "e" and "a" subscripts represent the electronic +and atomic subsystems respectively. g_p is the coupling constant for +the electron-ion interaction, and g_s is the electron stopping +coupling parameter. The form of the heat diffusion equation used here +is almost the same as that in equation 6 of "(Duffy)"_#Duffy, with the +exception that the electronic density is explicitly reprensented, +rather than being part of the the specific heat parameter. + +Currently, this fix assumes that none of the user-supplied parameters +will vary with temperature. This assumption can be relaxed by +modifying the source code to include the desired temperature +dependency and functional form for any of the parameters. Note that +"(Duffy)"_#Duffy used a tanh() functional form for the temperature +dependence of the electronic specific heat, but ignored temperature +dependencies of any of the other parameters. + +This fix requires use of periodic boundary conditions and a 3D +simulation. Periodic boundary conditions are also used in the heat +equation solve for the electronic subsystem. This varies from the +approach of "(Rutherford)"_#Rutherford where the atomic subsystem was +embedded within a larger continuum representation of the electronic +subsystem. + +The initial electronic temperature input file, {T_infile}, is a text +file LAMMPS reads in with no header and with four numeric columns +(ix,iy,iz,Temp) and with a number of rows equal to the number of +user-specified grid points (nxnodes*nynodes*nznodes). The ix,iy,iz +are node indices from 0 to nxnodes-1, etc. For example, the initial +electronic temperatures on a 1 by 2 by 3 grid could be specified in a +{T_infile} as follows: + +0 0 0 1.0 +0 0 1 1.0 +0 0 2 1.0 +0 1 0 2.0 +0 1 1 2.0 +0 1 2 2.0 :pre + +where the electronic temperatures along the nynodes=0 plane have been +set to 1.0, and the electronic temperatures along the nynodes=1 plane +have been set to 2.0. The order of lines in this file is unimportant. +If all the nodal values are not specified, LAMMPS will generate an +error. + +The temperature output file, {T_oufile}, is created and written by +this fix. Temperatures for both the electronic and atomic subsystems +at every node and every N timesteps are output. If N is specified as +zero, no output is generated, and no output filename is needed. The +format of the output is as follows. One long line is written every +output timestep. The timestep itself is given in the first column. +The next nxnodes*nynodes*nznodes columns contain the temperatures for +the atomic subsystem, and the final nxnodes*nynodes*nznodes columns +contain the temperatures for the electronic subsystem. The ordering +of the nxnodes*nynodes*nznodes columns is with the z index varing +fastest, y the next fastest, and x the slowest. + +This fix does not change the coordinates of its atoms; it only scales +their velocities. Thus a time integration fix (e.g. "fix +nve"_fix_nve.html) should still be used to time integrate the affected +atoms. This fix should not normally be used on atoms that have their +temperature controlled by another fix - e.g. "fix nvt"_fix_nvt.html or +"fix langevin"_fix_langevin.html. + +[Restart, fix_modify, output, run start/stop, minimize info:] + +No information about this fix is written to "binary restart +files"_restart.html. None of the "fix_modify"_fix_modify.html options +are relevant to this fix. No global scalar or vector or per-atom +quantities are stored by this fix for access by various "output +commands"_Section_howto.html#4_15. No parameter of this fix can be +used with the {start/stop} keywords of the "run"_run.html command. +This fix is not invoked during "energy minimization"_minimize.html. + +[Restrictions:] + +This fix can only be used for 3d simulations and orthogonal +simlulation boxes. You must use periodic "boundary"_doc/boundary.html +conditions with this fix. + +[Related commands:] + +"fix langevin"_fix_langevin.html, "fix dt/reset"_fix_dt_reset.html + +[Default:] none + +:link(Duffy) +[(Duffy)] D M Duffy and A M Rutherford, J. Phys.: Condens. Matter, 19, +016207-016218 (2007). + +:link(Rutherford) +[(Rutherford)] A M Rutherford and D M Duffy, J. Phys.: +Condens. Matter, 19, 496201-496210 (2007).