# fix atc command

## syntax

fix AtC transfer <type> <parameter_file>

- type
  = thermal : thermal coupling with fields: temperature
  = two_temperature : electron-phonon coupling with field: temperature and electron_temperature
  = hardy : Hardy on-the-fly post-processing (see "related" section for possible fields)
- parameter_file = name of the file with material parameters.
  note: hardy does not require a parameter file

## examples

`fix_modify AtC transfer thermal Ar_thermal.dat`
`fix_modify AtC transfer hardy`

## description

This fix is the beginning to creating a coupled FE/MD simulation and/or an on-the-fly estimation of continuum fields. The coupled versions of this fix do Verlet integration and the Hardy/post-processing does not. After instantiating this fix, several other fix_modify commands will be needed to set up the problem, e.g. define the finite element mesh and prescribe initial and boundary conditions.

The following coupling example is typical, but non-exhaustive:

`# ... commands to create and initialize the MD system
`

`# initial fix to designate coupling type and group to apply it to
# tag group physics material_file
fix AtC internal atc thermal Ar_thermal.mat
# create a uniform 12 x 2 x 2 mesh that covers region contain the group
# nx ny nz region periodicity
fix_modify AtC fem create mesh 12 2 2 mdRegion f p p
# specify the control method for the type of coupling
# physics control_type
fix_modify AtC transfer thermal control flux
# specify the initial values for the empirical field "temperature"
# field node_group value
fix_modify AtC transfer initial temperature all 30.
# create an output stream for nodal fields
# filename output_frequency
fix_modify AtC transfer output atc_fe_output 100
`

`run 1000
`

likewise for this post-processing example:

`# ... commands to create and initialize the MD system
`

`# initial fix to designate post-processing and the group to apply it to
# no material file is allowed nor required
fix AtC internal atc hardy
# create a uniform 1 x 1 x 1 mesh that covers region contain the group
# with periodicity this effectively creats a system average
fix_modify AtC fem create mesh 1 1 1 box p p p
# change from default lagrangian map to eulerian
# refreshed every 100 steps
fix_modify AtC atom_element_map eulerian 100
# start with no field defined
fix_modify AtC transfer fields none
# add mass density, potential energy density, stress and temperature
fix_modify AtC transfer fields add density energy stress temperature
# create an output stream for nodal fields
# filename output_frequency
fix_modify AtC transfer output nvtFE 100 text
`

`run 1000
`

Note coupling and post-processing can be combined in the same simulations using separate fixes.
For detailed exposition of the theory and algorithms please see:

- Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA. An atomistic-to-continuum coupling method for heat transfer in solids. Special Issue of Computer Methods and Applied Mechanics (2008) 197:3351.
- Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE; Klein, PA; Bammann, DJ, Calculation of stress in atomistic simulation Special Issue of Modelling and Simulation in Materials Science and Engineering (2004), 12:S319

Please refer to the standard finite element (FE) texts, e.g. T.J.R Hughes The finite element method , Dover 2003, for the basics of FE simulation.

## restrictions

Thermal and two_temperature (coupling) types use a Verlet time-integration algorithm. The hardy type does not contain its own time-integrator and must be used with a separate fix that does contain one, e.g. nve, nvt, etc.

Currently,

- the coupling is restricted to thermal physics
- the FE computations are done in serial on each processor.

## related

fix_modify commands for setup:

- fix_modify AtC fem create mesh
- fix_modify AtC mesh create_nodeset
- fix_modify AtC mesh create_faceset
- fix_modify AtC mesh create_elementset
- fix_modify AtC transfer internal
- fix_modify AtC transfer boundary
- fix_modify AtC transfer internal_quadrature
- fix_modify AtC transfer pmfc
- fix_modify AtC extrinsic electron_integration

fix_modify commands for boundary and initial conditions:

- fix_modify AtC transfer initial
- fix_modify AtC transfer fix
- fix_modify AtC transfer unfix
- fix_modify AtC transfer fix_flux
- fix_modify AtC transfer unfix_flux
- fix_modify AtC transfer source
- fix_modify AtC transfer remove_source

fix_modify commands for control and filtering:

- fix_modify AtC transfer thermal control
- fix_modify AtC transfer filter
- fix_modify AtC transfer filter scale
- fix_modify AtC transfer equilibrium_start
- fix_modify AtC extrinsic exchange

fix_modify commands for output:

- fix_modify AtC transfer output
- fix_modify AtC transfer atomic_output
- fix_modify AtC mesh output
- fix_modify AtC transfer write_restart
- fix_modify AtC transfer read_restart

fix_modify commands for post-processing:

- fix_modify AtC transfer fields
- fix_modify AtC transfer gradients
- fix_modify AtC transfer rates
- fix_modify AtC transfer computes
- fix_modify AtC set
- fix_modify AtC transfer on_the_fly
- fix_modify AtC boundary_integral
- fix_modify AtC contour_integral

miscellaneous fix_modify commands:

- fix_modify AtC transfer atom_element_map
- fix_modify AtC transfer neighbor_reset_frequency

Note: a set of example input files with the attendant material files are included with this package

## default

none