mirror of https://github.com/lammps/lammps.git
ATC version 2.0, date: Aug21
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@10637 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
7d0fe14fdb
commit
0f69054d68
|
@ -41,6 +41,7 @@
|
||||||
|
|
||||||
using namespace LAMMPS_NS;
|
using namespace LAMMPS_NS;
|
||||||
using namespace FixConst;
|
using namespace FixConst;
|
||||||
|
using std::string;
|
||||||
|
|
||||||
// main page of doxygen documentation
|
// main page of doxygen documentation
|
||||||
/*! \mainpage AtC : Atom-to-Continuum methods
|
/*! \mainpage AtC : Atom-to-Continuum methods
|
||||||
|
@ -148,7 +149,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
using separate fixes.
|
using separate fixes.
|
||||||
\n
|
\n
|
||||||
For detailed exposition of the theory and algorithms please see:\n
|
For detailed exposition of the theory and algorithms please see:\n
|
||||||
- Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA. <VAR> An
|
- Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA, <VAR> An
|
||||||
atomistic-to-continuum coupling method for heat transfer in solids. </VAR>
|
atomistic-to-continuum coupling method for heat transfer in solids. </VAR>
|
||||||
Special Issue of Computer Methods and Applied Mechanics (2008) 197:3351. \n
|
Special Issue of Computer Methods and Applied Mechanics (2008) 197:3351. \n
|
||||||
- Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE; Klein, PA; Bammann, DJ,
|
- Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE; Klein, PA; Bammann, DJ,
|
||||||
|
@ -159,6 +160,19 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
<VAR> A material frame approach for evaluating continuum variables in
|
<VAR> A material frame approach for evaluating continuum variables in
|
||||||
atomistic simulations. </VAR>
|
atomistic simulations. </VAR>
|
||||||
Journal of Computational Physics (2010), 229:2364. \n
|
Journal of Computational Physics (2010), 229:2364. \n
|
||||||
|
- Templeton, JA; Jones, RE; Wagner, GJ, <VAR> Application of a field-based method
|
||||||
|
to spatially varying thermal transport problems in molecular dynamics. </VAR>
|
||||||
|
Modelling and Simulation in Materials Science and Engineering (2010), 18:085007. \n
|
||||||
|
- Jones, RE; Templeton, JA; Wagner, GJ; Olmsted, D; Modine, JA, <VAR>
|
||||||
|
Electron transport enhanced molecular dynamics for metals and semi-metals. </VAR>
|
||||||
|
International Journal for Numerical Methods in Engineering (2010), 83:940. \n
|
||||||
|
- Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA; Wong, BM,
|
||||||
|
<VAR> A long-range electric field solver for molecular dynamics based on
|
||||||
|
atomistic-to-continuum modeling. </VAR>
|
||||||
|
Journal of Chemical Theory and Computation (2011), 7:1736. \n
|
||||||
|
- Mandadapu, KK; Templeton, JA; Lee, JW, <VAR> Polarization as a field variable
|
||||||
|
from molecular dynamics simulations. </VAR>
|
||||||
|
Journal of Chemical Physics (2013), 139:054115. \n
|
||||||
|
|
||||||
Please refer to the standard
|
Please refer to the standard
|
||||||
finite element (FE) texts, e.g. T.J.R Hughes <VAR> The finite element
|
finite element (FE) texts, e.g. T.J.R Hughes <VAR> The finite element
|
||||||
|
@ -294,7 +308,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (me==0) printf("ATC: constructing shape function field estimate with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing shape function field estimate with parameter file %s\n",arg[4]);
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
atc_ = new ATC::ATC_TransferPartitionOfUnity(groupName,
|
atc_ = new ATC::ATC_TransferPartitionOfUnity(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
matParamFile);
|
matParamFile);
|
||||||
|
@ -314,7 +328,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (me==0) printf("ATC: constructing kernel field estimate with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing kernel field estimate with parameter file %s\n",arg[4]);
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
atc_ = new ATC::ATC_TransferKernel(groupName,
|
atc_ = new ATC::ATC_TransferKernel(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
matParamFile);
|
matParamFile);
|
||||||
|
@ -323,7 +337,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
// PhysicsTypes
|
// PhysicsTypes
|
||||||
else if (strcmp(arg[3],"thermal")==0)
|
else if (strcmp(arg[3],"thermal")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing thermal coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing thermal coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -331,7 +345,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"two_temperature")==0)
|
else if (strcmp(arg[3],"two_temperature")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing two_temperature coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing two_temperature coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -339,7 +353,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"drift_diffusion")==0)
|
else if (strcmp(arg[3],"drift_diffusion")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing drift_diffusion coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing drift_diffusion coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -347,7 +361,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"drift_diffusion-equilibrium")==0)
|
else if (strcmp(arg[3],"drift_diffusion-equilibrium")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing drift_diffusion-equilibrium coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing drift_diffusion-equilibrium coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -355,7 +369,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"drift_diffusion-schrodinger")==0)
|
else if (strcmp(arg[3],"drift_diffusion-schrodinger")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing drift_diffusion-schrodinger coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing drift_diffusion-schrodinger coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -363,7 +377,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"drift_diffusion-schrodinger-slice")==0)
|
else if (strcmp(arg[3],"drift_diffusion-schrodinger-slice")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("Constructing ATC transfer (drift_diffusion-schrodinger-slice) with parameter file %s\n",arg[4]);
|
if (me==0) printf("Constructing ATC transfer (drift_diffusion-schrodinger-slice) with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -371,7 +385,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"convective_drift_diffusion")==0)
|
else if (strcmp(arg[3],"convective_drift_diffusion")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing convective_drift_diffusion coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing convective_drift_diffusion coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -379,7 +393,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"convective_drift_diffusion-equilibrium")==0)
|
else if (strcmp(arg[3],"convective_drift_diffusion-equilibrium")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing convective_drift_diffusion-equilibrium coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing convective_drift_diffusion-equilibrium coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -387,7 +401,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"convective_drift_diffusion-schrodinger")==0)
|
else if (strcmp(arg[3],"convective_drift_diffusion-schrodinger")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing convective_drift_diffusion-schrodinger coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing convective_drift_diffusion-schrodinger coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -395,7 +409,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"elastic")==0)
|
else if (strcmp(arg[3],"elastic")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing elastic coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing elastic coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -404,7 +418,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"electrostatic")==0)
|
else if (strcmp(arg[3],"electrostatic")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing electrostatic mechanical coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing electrostatic mechanical coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -414,7 +428,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"electrostatic-equilibrium")==0)
|
else if (strcmp(arg[3],"electrostatic-equilibrium")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing equilibrium electrostatic coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing equilibrium electrostatic coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -424,7 +438,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"shear")==0)
|
else if (strcmp(arg[3],"shear")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing viscous/shear coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing viscous/shear coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -433,7 +447,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"electrostatic_equilibrium")==0)
|
else if (strcmp(arg[3],"electrostatic_equilibrium")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("Constructing ATC transfer (electrostatic_equilibrium) with parameter file %s\n",arg[4]);
|
if (me==0) printf("Constructing ATC transfer (electrostatic_equilibrium) with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
atc_ = new ATC::ATC_CouplingMomentum(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -443,7 +457,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"species")==0)
|
else if (strcmp(arg[3],"species")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing species diffusion coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing species diffusion coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMass(groupName,
|
atc_ = new ATC::ATC_CouplingMass(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -451,7 +465,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"species_electrostatic")==0)
|
else if (strcmp(arg[3],"species_electrostatic")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing electrostatic species coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing electrostatic species coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMass(groupName,
|
atc_ = new ATC::ATC_CouplingMass(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -459,7 +473,7 @@ FixATC::FixATC(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
|
||||||
}
|
}
|
||||||
else if (strcmp(arg[3],"thermo_elastic")==0)
|
else if (strcmp(arg[3],"thermo_elastic")==0)
|
||||||
{
|
{
|
||||||
std::string matParamFile = arg[4];
|
string matParamFile = arg[4];
|
||||||
if (me==0) printf("ATC: constructing thermo-mechanical coupling with parameter file %s\n",arg[4]);
|
if (me==0) printf("ATC: constructing thermo-mechanical coupling with parameter file %s\n",arg[4]);
|
||||||
atc_ = new ATC::ATC_CouplingMomentumEnergy(groupName,
|
atc_ = new ATC::ATC_CouplingMomentumEnergy(groupName,
|
||||||
array_atom, this,
|
array_atom, this,
|
||||||
|
@ -796,7 +810,6 @@ void FixATC::initial_integrate(int vflag)
|
||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void FixATC::final_integrate()
|
void FixATC::final_integrate()
|
||||||
|
|
|
@ -10,9 +10,6 @@ FixStyle(atc,FixATC)
|
||||||
#include "fix.h"
|
#include "fix.h"
|
||||||
#include "pointers.h" // access to lammps pointers
|
#include "pointers.h" // access to lammps pointers
|
||||||
|
|
||||||
#include <string>
|
|
||||||
using std::string;
|
|
||||||
|
|
||||||
namespace ATC {
|
namespace ATC {
|
||||||
class ATC_Method;
|
class ATC_Method;
|
||||||
}
|
}
|
||||||
|
@ -41,7 +38,6 @@ namespace LAMMPS_NS {
|
||||||
|
|
||||||
/** initial_integrate */
|
/** initial_integrate */
|
||||||
void initial_integrate(int vflag);
|
void initial_integrate(int vflag);
|
||||||
|
|
||||||
/** final_integrate */
|
/** final_integrate */
|
||||||
void final_integrate();
|
void final_integrate();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue