upgrade of lb/fluid fix
This includes documentation files in the rst format in the doc/src directory, examples in the examples/PACKAGES/latboltz directory and source files in the src/LATBOLTZ directory.
This commit is contained in:
@ -12,54 +12,60 @@ Syntax
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* lb/fluid = style name of this fix command
|
||||
* nevery = update the lattice-Boltzmann fluid every this many timesteps
|
||||
* LBtype = 1 to use the standard finite difference LB integrator,
|
||||
2 to use the LB integrator of :ref:`Ollila et al. <Ollila>`
|
||||
* nevery = update the lattice-Boltzmann fluid every this many timesteps (should normally be 1)
|
||||
* viscosity = the fluid viscosity (units of mass/(time\*length)).
|
||||
* density = the fluid density.
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *setArea* or *setGamma* or *scaleGamma* or *dx* or *dm* or *a0* or *noise* or *calcforce* or *trilinear* or *D3Q19* or *read_restart* or *write_restart* or *zwall_velocity* or *bodyforce* or *printfluid*
|
||||
* keyword = *dx* or *dm* or *noise* or *stencil* or *read_restart* or *write_restart* or *zwall_velocity* or *pressurebcx* or *bodyforce* or *D3Q19* or *dumpxdmf* or *linearInit* or *dof* or *scaleGamma* or *a0* or *npits* or *wp* or *sw*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*setArea* values = type node_area
|
||||
type = atom type (1-N)
|
||||
node_area = portion of the surface area of the composite object associated with the particular atom type (used when the force coupling constant is set by default).
|
||||
*setGamma* values = gamma
|
||||
gamma = user set value for the force coupling constant.
|
||||
*scaleGamma* values = type gammaFactor
|
||||
type = atom type (1-N)
|
||||
gammaFactor = factor to scale the *setGamma* gamma value by, for the specified atom type.
|
||||
*dx* values = dx_LB = the lattice spacing.
|
||||
*dm* values = dm_LB = the lattice-Boltzmann mass unit.
|
||||
*a0* values = a_0_real = the square of the speed of sound in the fluid.
|
||||
*noise* values = Temperature seed
|
||||
Temperature = fluid temperature.
|
||||
seed = random number generator seed (positive integer)
|
||||
*calcforce* values = N forcegroup-ID
|
||||
N = output the force and torque every N timesteps
|
||||
forcegroup-ID = ID of the particle group to calculate the force and torque of
|
||||
*trilinear* values = none (used to switch from the default Peskin interpolation stencil to the trilinear stencil).
|
||||
*D3Q19* values = none (used to switch from the default D3Q15, 15 velocity lattice, to the D3Q19, 19 velocity lattice).
|
||||
*stencil* values = 2 (trilinear stencil, the default), 3 (3-point immersed boundary stencil), or 4 (4-point Keys' interpolation stencil)
|
||||
*read_restart* values = restart file = name of the restart file to use to restart a fluid run.
|
||||
*write_restart* values = N = write a restart file every N MD timesteps.
|
||||
*zwall_velocity* values = velocity_bottom velocity_top = velocities along the y-direction of the bottom and top walls (located at z=zmin and z=zmax).
|
||||
*pressurebcx* values = pgradav = imposes a pressure jump at the (periodic) x-boundary of pgradav*Lx*1000.
|
||||
*bodyforce* values = bodyforcex bodyforcey bodyforcez = the x,y and z components of a constant body force added to the fluid.
|
||||
*printfluid* values = N = print the fluid density and velocity at each grid point every N timesteps.
|
||||
*D3Q19* values = none (used to switch from the default D3Q15, 15 velocity lattice, to the D3Q19, 19 velocity lattice).
|
||||
*dumpxdmf* values = N file timeI
|
||||
N = output the force and torque every N timesteps
|
||||
file = output file name
|
||||
timeI = 1 (use simulation time to index xdmf file), 0 (use output frame number to index xdmf file)
|
||||
*linearInit* values = none use linear interpolation between boundary values for initialization (default is uniform density, 0 velocity)
|
||||
*dof* values = dof = specify the number of degrees of freedom for temperature calculation
|
||||
*scaleGamma* values = type gammaFactor
|
||||
type = atom type (1-N)
|
||||
gammaFactor = factor to scale the *setGamma* gamma value by, for the specified atom type.
|
||||
*a0* values = a_0_real = the square of the speed of sound in the fluid.
|
||||
*npits* values = npits h_p l_p l_pp l_e
|
||||
npits = number of pit regions
|
||||
h_p = z-height of pit regions (floor to bottom of slit)
|
||||
l_p = x-length of pit regions
|
||||
l_pp = x-length of slit regions between consecutive pits
|
||||
l_e = x-length of slit regions at ends
|
||||
*wp* values = w_p = y-width of slit regions (defaults to full width if not present or if sw active)
|
||||
*sw* values = none (turns on y-sidewalls (in xz plane) if npits option active)
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all lb/fluid 1 2 1.0 1.0 setGamma 13.0 dx 4.0 dm 10.0 calcforce sphere1
|
||||
fix 1 all lb/fluid 1 1 1.0 0.0009982071 setArea 1 1.144592082 dx 2.0 dm 0.3 trilinear noise 300.0 8979873
|
||||
fix 1 all lb/fluid 1 1.0 0.0009982071 dx 1.2 dm 0.001
|
||||
fix 1 all lb/fluid 1 1.0 0.0009982071 dx 1.2 dm 0.001 noise 300.0 2761
|
||||
fix 1 all lb/fluid 1 1.0 1.0 dx 4.0 dm 10.0 dumpxdmf 500 fflow 0 pressurebcx 0.01 npits 2 20 40 5 0 wp 30
|
||||
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Implement a lattice-Boltzmann fluid on a uniform mesh covering the LAMMPS
|
||||
simulation domain. The MD particles described by *group-ID* apply a velocity
|
||||
simulation domain. Note that this fix was updated in 2021 and is not backward compatible with the previous version. If you need the previous version, please download an older version of LAMMPS. The MD particles described by *group-ID* apply a velocity
|
||||
dependent force to the fluid.
|
||||
|
||||
The lattice-Boltzmann algorithm solves for the fluid motion governed by
|
||||
@ -85,7 +91,7 @@ respectively. Here, we have implemented
|
||||
|
||||
\sigma_{\alpha \beta} = -P_{\alpha \beta} = -\rho a_0 \delta_{\alpha \beta}
|
||||
|
||||
with :math:`a_0` set to :math:`\frac{1}{3} \frac{dx}{dt}^2` by default.
|
||||
with :math:`a_0` set to :math:`\frac{1}{3} \frac{dx}{dt}^2` by default. You should not normally need to change this default.
|
||||
|
||||
The algorithm involves tracking the time evolution of a set of partial
|
||||
distribution functions which evolve according to a velocity
|
||||
@ -100,13 +106,7 @@ relaxation towards the equilibrium distribution function, and :math:`\tau` is a
|
||||
parameter physically related to the viscosity. On a technical note,
|
||||
we have implemented a 15 velocity model (D3Q15) as default; however,
|
||||
the user can switch to a 19 velocity model (D3Q19) through the use of
|
||||
the *D3Q19* keyword. This fix provides the user with the choice of
|
||||
two algorithms to solve this equation, through the specification of
|
||||
the keyword *LBtype*\ . If *LBtype* is set equal to 1, the standard
|
||||
finite difference LB integrator is used. If *LBtype* is set equal to
|
||||
2, the algorithm of :ref:`Ollila et al. <Ollila>` is used.
|
||||
|
||||
Physical variables are then defined in terms of moments of the distribution
|
||||
the *D3Q19* keyword. Physical variables are then defined in terms of moments of the distribution
|
||||
functions,
|
||||
|
||||
.. math::
|
||||
@ -129,78 +129,47 @@ calculated as:
|
||||
where :math:`\mathbf{v}_n` is the velocity of the MD particle,
|
||||
:math:`\mathbf{u}_f` is the fluid
|
||||
velocity interpolated to the particle location, and :math:`\gamma` is the force
|
||||
coupling constant. :math:`\zeta` is a weight assigned to the grid point,
|
||||
coupling constant. This force, as with most forces in LAMMPS, and hence the velocities, are calculated at the half-time step. :math:`\zeta` is a weight assigned to the grid point,
|
||||
obtained by distributing the particle to the nearest lattice sites.
|
||||
For this, the user has the choice between a trilinear stencil, which
|
||||
provides a support of 8 lattice sites, or the immersed boundary method
|
||||
Peskin stencil, which provides a support of 64 lattice sites. While
|
||||
the Peskin stencil is seen to provide more stable results, the
|
||||
trilinear stencil may be better suited for simulation of objects close
|
||||
to walls, due to its smaller support. Therefore, by default, the
|
||||
Peskin stencil is used; however the user may switch to the trilinear
|
||||
stencil by specifying the keyword, *trilinear*\ .
|
||||
|
||||
By default, the force coupling constant, :math:`\gamma`, is calculated
|
||||
The force coupling constant, :math:`\gamma`, is calculated
|
||||
according to
|
||||
|
||||
.. math::
|
||||
|
||||
\gamma = \frac{2m_um_v}{m_u+m_v}\left(\frac{1}{\Delta t_{collision}}\right)
|
||||
\gamma = \frac{2m_um_v}{m_u+m_v}\left(\frac{1}{\Delta t}\right)
|
||||
|
||||
Here, :math:`m_v` is the mass of the MD particle, :math:`m_u` is a
|
||||
representative fluid mass at the particle location, and :math:`\Delta
|
||||
t_{collision}` is a collision time, chosen such that
|
||||
:math:`\frac{\tau}{\Delta t_{collision}} = 1` (see :ref:`Mackay and
|
||||
Denniston <Mackay2>` for full details). In order to calculate :math:`m_u`,
|
||||
the fluid density is interpolated to the MD particle location, and
|
||||
multiplied by a volume, node_area * :math:`dx_{LB}`, where node_area
|
||||
represents the portion of the surface area of the composite object
|
||||
associated with a given MD particle. By default, node_area is set
|
||||
equal to :math:`dx_{LB}^2`; however specific values for given atom types
|
||||
can be set using the *setArea* keyword.
|
||||
|
||||
The user also has the option of specifying their own value for the
|
||||
force coupling constant, for all the MD particles associated with the
|
||||
fix, through the use of the *setGamma* keyword. This may be useful
|
||||
when modelling porous particles. See :ref:`Mackay et al. <fluid-Mackay>` for a
|
||||
detailed description of the method by which the user can choose an
|
||||
appropriate :math:`\gamma` value.
|
||||
t` is the time step. The fluid mass :math:`m_u` that the MD particle interacts with is calcuated internally.
|
||||
This coupling is chosen to constrain the particle and associated fluid velocity to match at the end of the time step. As with other constraints, such as :doc:`shake <fix_shake>`, this constraint can remove degrees of freedom from the simulation which are accounted for internally in the algorithm.
|
||||
|
||||
.. note::
|
||||
|
||||
while this fix applies the force of the particles on the fluid,
|
||||
it does not apply the force of the fluid to the particles. When the
|
||||
force coupling constant is set using the default method, there is only
|
||||
it does not apply the force of the fluid to the particles. There is only
|
||||
one option to include this hydrodynamic force on the particles, and
|
||||
that is through the use of the :doc:`lb/viscous <fix_lb_viscous>` fix.
|
||||
This fix adds the hydrodynamic force to the total force acting on the
|
||||
particles, after which any of the built-in LAMMPS integrators can be
|
||||
used to integrate the particle motion. However, if the user specifies
|
||||
their own value for the force coupling constant, as mentioned in
|
||||
:ref:`Mackay et al. <fluid-Mackay>`, the built-in LAMMPS integrators may prove to
|
||||
be unstable. Therefore, we have included our own integrators
|
||||
:doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`, and
|
||||
:doc:`fix lb/pc <fix_lb_pc>`, to solve for the particle motion in these
|
||||
cases. These integrators should not be used with the
|
||||
:doc:`lb/viscous <fix_lb_viscous>` fix, as they add hydrodynamic forces
|
||||
to the particles directly. In addition, they can not be used if the
|
||||
force coupling constant has been set the default way.
|
||||
|
||||
.. note::
|
||||
|
||||
if the force coupling constant is set using the default method,
|
||||
and the :doc:`lb/viscous <fix_lb_viscous>` fix is NOT used to add the
|
||||
hydrodynamic force to the total force acting on the particles, this
|
||||
used to integrate the particle motion. If the :doc:`lb/viscous <fix_lb_viscous>`
|
||||
fix is NOT used to add the hydrodynamic force to the total force acting on the particles, this
|
||||
physically corresponds to a situation in which an infinitely massive
|
||||
particle is moving through the fluid (since collisions between the
|
||||
particle and the fluid do not act to change the particle's velocity).
|
||||
Therefore, the user should set the mass of the particle to be
|
||||
significantly larger than the mass of the fluid at the particle
|
||||
location, in order to approximate an infinitely massive particle (see
|
||||
the dragforce test run for an example).
|
||||
particle and the fluid do not act to change the particle's velocity). In this case,
|
||||
setting *scaleGamma* to -1 for the corresponding particle type will explicity take this
|
||||
limit (of infinite particle mass) in computing the force coupling for the fluid force.
|
||||
|
||||
----------
|
||||
|
||||
Physical parameters describing the fluid are specified through
|
||||
*viscosity* and *density*. These parameters should all be given in terms of
|
||||
the mass, distance, and time units chosen for the main LAMMPS run, as
|
||||
they are scaled by the LB timestep, lattice spacing, and mass unit,
|
||||
inside the fix.
|
||||
|
||||
The *dx* keyword allows the user to specify a value for the LB grid
|
||||
spacing and the *dm* keyword allows the user to specify the LB mass unit.
|
||||
Inside the fix, parameters are scaled by the lattice-Boltzmann
|
||||
timestep, :math:`dt_{LB}`, grid spacing, :math:`dx_{LB}`, and mass unit,
|
||||
:math:`dm_{LB}`. :math:`dt_{LB}` is set equal to
|
||||
@ -208,11 +177,8 @@ timestep, :math:`dt_{LB}`, grid spacing, :math:`dx_{LB}`, and mass unit,
|
||||
By default,
|
||||
:math:`dm_{LB}` is set equal to 1.0, and :math:`dx_{LB}` is chosen so that
|
||||
:math:`\frac{\tau}{dt} = \frac{3\eta dt}{\rho dx^2}` is approximately equal to 1.
|
||||
However, the user has the option of specifying their own values for
|
||||
:math:`dm_{LB}`, and :math:`dx_{LB}`, by using
|
||||
the optional keywords *dm*, and *dx* respectively.
|
||||
|
||||
.. note::
|
||||
.. note::
|
||||
|
||||
Care must be taken when choosing both a value for :math:`dx_{LB}`,
|
||||
and a simulation domain size. This fix uses the same subdivision of
|
||||
@ -223,68 +189,14 @@ the optional keywords *dm*, and *dx* respectively.
|
||||
with equal lengths in all dimensions, and the default value for
|
||||
:math:`dx_{LB}` is used, this will automatically be satisfied.
|
||||
|
||||
Physical parameters describing the fluid are specified through
|
||||
*viscosity*, *density*, and *a0*\ . If the force coupling constant is
|
||||
set the default way, the surface area associated with the MD particles
|
||||
is specified using the *setArea* keyword. If the user chooses to
|
||||
specify a value for the force coupling constant, this is set using the
|
||||
*setGamma* keyword. These parameters should all be given in terms of
|
||||
the mass, distance, and time units chosen for the main LAMMPS run, as
|
||||
they are scaled by the LB timestep, lattice spacing, and mass unit,
|
||||
inside the fix.
|
||||
|
||||
----------
|
||||
|
||||
The *setArea* keyword allows the user to associate a surface area with
|
||||
a given atom type. For example if a spherical composite object of
|
||||
radius R is represented as a spherical shell of N evenly distributed
|
||||
MD particles, all of the same type, the surface area per particle
|
||||
associated with that atom type should be set equal to :math:`\frac{4\pi R^2}{N}`.
|
||||
This keyword should only be used if the force coupling constant,
|
||||
:math:`\gamma`, is set the default way.
|
||||
|
||||
The *setGamma* keyword allows the user to specify their own value for
|
||||
the force coupling constant, :math:`\gamma`, instead of using the default
|
||||
value.
|
||||
|
||||
The *scaleGamma* keyword should be used in conjunction with the
|
||||
*setGamma* keyword, when the user wishes to specify different :math:`\gamma`
|
||||
values for different atom types. This keyword allows the user to
|
||||
scale the *setGamma* :math:`\gamma` value by a factor, gammaFactor,
|
||||
for a given atom type.
|
||||
|
||||
The *dx* keyword allows the user to specify a value for the LB grid
|
||||
spacing.
|
||||
|
||||
The *dm* keyword allows the user to specify the LB mass unit.
|
||||
|
||||
If the *a0* keyword is used, the value specified is used for the
|
||||
square of the speed of sound in the fluid. If this keyword is not
|
||||
present, the speed of sound squared is set equal to
|
||||
:math:`\frac{1}{3}\left(\frac{dx_{LB}}{dt_{LB}}\right)^2`.
|
||||
Setting :math:`a0 > (\frac{dx_{LB}}{dt_{LB}})^2` is not allowed,
|
||||
as this may lead to instabilities.
|
||||
|
||||
If the *noise* keyword is used, followed by a positive temperature
|
||||
value, and a positive integer random number seed, a thermal
|
||||
lattice-Boltzmann algorithm is used. If *LBtype* is set equal to 1
|
||||
(i.e. the standard LB integrator is chosen), the thermal LB algorithm
|
||||
of :ref:`Adhikari et al. <Adhikari>` is used; however if *LBtype* is set
|
||||
equal to 2 both the LB integrator, and thermal LB algorithm described
|
||||
in :ref:`Ollila et al. <Ollila>` are used.
|
||||
value, and a positive integer random number seed, the thermal LB algorithm
|
||||
of :ref:`Adhikari et al. <Adhikari>` is used.
|
||||
|
||||
If the *calcforce* keyword is used, both the fluid force and torque
|
||||
acting on the specified particle group are printed to the screen every
|
||||
N timesteps.
|
||||
|
||||
If the keyword *trilinear* is used, the trilinear stencil is used to
|
||||
interpolate the particle nodes onto the fluid mesh. By default, the
|
||||
immersed boundary method, Peskin stencil is used. Both of these
|
||||
interpolation methods are described in :ref:`Mackay et al. <fluid-Mackay>`.
|
||||
|
||||
If the keyword *D3Q19* is used, the 19 velocity (D3Q19) lattice is
|
||||
used by the lattice-Boltzmann algorithm. By default, the 15 velocity
|
||||
(D3Q15) lattice is used.
|
||||
If the keyword *stencil* is used, the value sets the number of interpolation points
|
||||
used in each direction. For this, the user has the choice between a trilinear stencil (*stencil* 2), which
|
||||
provides a support of 8 lattice sites, or the 3-point immersed boundary method
|
||||
stencil (*stencil* 3), which provides a support of 27 lattice sites, or the 4-point Keys' interpolation stencil (stencil 4), which provides a support of 64 lattice sites. The trilinear stencil is the default as it is better suited for simulation of objects close to walls or other objects, due to its smaller support. The 3-point stencil provides smoother motion of the lattice and is suitable for particles not likely to be to close to walls or other objects.
|
||||
|
||||
If the keyword *write_restart* is used, followed by a positive
|
||||
integer, N, a binary restart file is printed every N LB timesteps.
|
||||
@ -308,12 +220,62 @@ conditions in the z-direction. If fixed boundary conditions are
|
||||
present in the z-direction, and this keyword is not used, the walls
|
||||
are assumed to be stationary.
|
||||
|
||||
If the *pressurebcx* keyword is used, a pressure jump (implemented by a step jump in density)
|
||||
is imposed at the (periodic) x-boundary. The value set specifies what would be the resulting equilibrium average pressure gradient in the x-direction if the system had a constant cross-section (i.e. resistance to flow). It is converted to a pressure jump by multiplication by the system size in the x-direction. As this value should normally be quite small, it is also assumed to be scaled by 1000.
|
||||
|
||||
If the *bodyforce* keyword is used, a constant body force is added to
|
||||
the fluid, defined by it's x, y and z components.
|
||||
|
||||
If the *printfluid* keyword is used, followed by a positive integer, N,
|
||||
the fluid densities and velocities at each lattice site are printed to the
|
||||
screen every N timesteps.
|
||||
If the keyword *D3Q19* is used, the 19 velocity (D3Q19) lattice is
|
||||
used by the lattice-Boltzmann algorithm. By default, the 15 velocity
|
||||
(D3Q15) lattice is used.
|
||||
|
||||
If the *dumpxdmf* keyword is used, followed by a positive integer, N, and a file name, the fluid densities and velocities at each lattice site are output to an xdmf file every N timesteps. This is a binary file format that can be read by visualization packages such as `Paraview <https://www.paraview.org/>`_ . The xdmf file format contains a time index for each frame dump and the value timeI = 1 uses simulation time while 0 uses the output frame number to index xdmf file. The later can be useful if the :doc:`dump vtk <dump_vtk>` command is used to output the particle positions at the same timesteps and you want to visualize both the fluid and particle data together in `Paraview <https://www.paraview.org/>`_ .
|
||||
|
||||
The *scaleGamma* keyword allows the user to
|
||||
scale the :math:`\gamma` value by a factor, gammaFactor,
|
||||
for a given atom type. Setting *scaleGamma* to -1 for the corresponding particle type
|
||||
will explicity take the limit of infinite particle mass in computing the force coupling for the fluid force (see note above).
|
||||
|
||||
If the *a0* keyword is used, the value specified is used for the
|
||||
square of the speed of sound in the fluid. If this keyword is not
|
||||
present, the speed of sound squared is set equal to
|
||||
:math:`\frac{1}{3}\left(\frac{dx_{LB}}{dt_{LB}}\right)^2`.
|
||||
Setting :math:`a0 > (\frac{dx_{LB}}{dt_{LB}})^2` is not allowed,
|
||||
as this may lead to instabilities. As the speed of sound should usually be
|
||||
much larger than any fluid velocity of interest, its value does not normally have
|
||||
a significant impact on the results. As such, it is usually best to use the default
|
||||
for this option.
|
||||
|
||||
The *npits* keyword (followed by integer arguments: npits, h_p, l_p, l_pp, l_e) sets the fluid domain to the pits geometry. These arguments should only be used if you actually want something more complex than a rectangular/cubic geometry. The npits value sets the number of pits regions (arranged along x). The remaining arguments are sizes measured in multiples of dx_lb: h_p is the z-height of the pit regions, l_p is the x-length of the pit regions, l_pp is the length of the region between consecutive pits (referred to as a "slit" region), and l_e is the x-length of the slit regions at each end of the channel. The pit geometry must fill the system in the x-direction but can be longer, in which case it is truncated (which enables asymmetric entrance/exit end sections). The additional *wp* keyword allows the width (in y-direction) of the pit to be specified (the default is full width) and the *sw* keyword indicates that there should be sidewalls in the y-direction (default is periodic in y-direction). These parameters are illustrated below::
|
||||
|
||||
Sideview (in xz plane) of pit geometry:
|
||||
______________________________________________________________________
|
||||
slit slit slit ^
|
||||
|
|
||||
<---le---><---------lp-------><---lpp---><-------lp--------><---le---> hs = (Nbz-1) - hp
|
||||
|
|
||||
__________ __________ __________ v
|
||||
| | | | ^ z
|
||||
| | | | | |
|
||||
| pit | | pit | hp +-x
|
||||
| | | | |
|
||||
|__________________| |__________________| v
|
||||
|
||||
Endview (in yz plane) of pit geometry (no sw so wp is active):
|
||||
_____________________
|
||||
^
|
||||
|
|
||||
hs
|
||||
|
|
||||
_____________________ v
|
||||
| | ^
|
||||
| | | z
|
||||
|<---wp--->| hp |
|
||||
| | | +-y
|
||||
|__________| v
|
||||
|
||||
|
||||
|
||||
----------
|
||||
|
||||
@ -333,9 +295,13 @@ binary restart files, if requested, independent of the main LAMMPS
|
||||
is written to the main LAMMPS :doc:`binary restart files <restart>`.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix. No global or per-atom quantities are stored by this fix for
|
||||
access by various :doc:`output commands <Howto_output>`. No parameter
|
||||
of this fix can be used with the *start/stop* keywords of the
|
||||
fix.
|
||||
|
||||
The fix computes a global scalar which can be accessed by various :doc:`output commands <Howto_output>`. The scalar is the current temperature of the group of particles described by *group-ID* along with the fluid constrained to move with them. The temperature is computed via the kinetic energy of the group and fluid constrained to move with them and the total number of degrees of freedom (calculated internally). If the particles are not integrated independently (such as via :doc:`fix NVE <fix_nve>`) but have additional constraints imposed on them (such as via integration using :doc:`fix rigid <fix_rigid>`) the degrees of freedom removed from these additional constraints will not be properly accounted for. In this case, the user can specify the total degrees of freedom independently using the *dof* keyword.
|
||||
|
||||
The fix also computes a global array of values which can be accessed by various :doc:`output commands <Howto_output>`. There are 5 entries in the array. The first entry is the temperature of the fluid, the second entry is the total mass of the fluid plus particles, the third through fifth entries give the x, y, and z total momentum of the fluid plus particles.
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of the
|
||||
:doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
@ -346,45 +312,30 @@ was built with that package. See the :doc:`Build package <Build_package>` page
|
||||
|
||||
This fix can only be used with an orthogonal simulation domain.
|
||||
|
||||
Walls have only been implemented in the z-direction. Therefore, the
|
||||
boundary conditions, as specified via the main LAMMPS boundary command
|
||||
must be periodic for x and y, and either fixed or periodic for z.
|
||||
The boundary conditions for the fluid are specified independently to the particles. However, these should normally be specified consistently via the main LAMMPS :doc:`boundary <boundary>` command (p p p, p p f, and p f f are the only consistent possibilities).
|
||||
Shrink-wrapped boundary conditions are not permitted with this fix.
|
||||
|
||||
This fix must be used before any of :doc:`fix lb/viscous <fix_lb_viscous>`, :doc:`fix lb/momentum <fix_lb_momentum>`, :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`, and/ or :doc:`fix lb/pc <fix_lb_pc>` , as the fluid needs to be initialized before
|
||||
This fix must be used before any of :doc:`fix lb/viscous <fix_lb_viscous>` and :doc:`fix lb/momentum <fix_lb_momentum>` as the fluid needs to be initialized before
|
||||
any of these routines try to access its properties. In addition, in
|
||||
order for the hydrodynamic forces to be added to the particles, this
|
||||
fix must be used in conjunction with the
|
||||
:doc:`lb/viscous <fix_lb_viscous>` fix if the force coupling constant is
|
||||
set by default, or either the :doc:`lb/viscous <fix_lb_viscous>` fix or
|
||||
one of the :doc:`lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>` or
|
||||
:doc:`lb/pc <fix_lb_pc>` integrators, if the user chooses to specify
|
||||
their own value for the force coupling constant.
|
||||
:doc:`lb/viscous <fix_lb_viscous>` fix.
|
||||
|
||||
This fix needs to be used in conjuntion with a standard LAMMPS integrator such as :doc:`fix NVE <fix_nve>` or :doc:`fix rigid <fix_rigid>`.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix lb/viscous <fix_lb_viscous>`, :doc:`fix lb/momentum <fix_lb_momentum>`, :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`, :doc:`fix lb/pc <fix_lb_pc>`
|
||||
:doc:`fix lb/viscous <fix_lb_viscous>`, :doc:`fix lb/momentum <fix_lb_momentum>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
By default, the force coupling constant is set according to
|
||||
|
||||
.. math::
|
||||
|
||||
\gamma = \frac{2m_um_v}{m_u+m_v}\left(\frac{1}{\Delta t_{collision}}\right)
|
||||
|
||||
and an area of :math:`dx_{LB}^2` per node, used to calculate the fluid mass at
|
||||
the particle node location, is assumed.
|
||||
|
||||
*dx* is chosen such that :math:`\frac{\tau}{dt_{LB}} =
|
||||
\frac{3\eta dt_{LB}}{\rho dx_{LB}^2}` is approximately equal to 1.
|
||||
*dx* is chosen such that :math:`\frac{\tau}{dt_{LB}} = \frac{3\eta dt_{LB}}{\rho dx_{LB}^2}` is approximately equal to 1.
|
||||
*dm* is set equal to 1.0.
|
||||
*a0* is set equal to :math:`\frac{1}{3}\left(\frac{dx_{LB}}{dt_{LB}}\right)^2`.
|
||||
The Peskin stencil is used as the default interpolation method.
|
||||
The trilinear stencil is used as the default interpolation method.
|
||||
The D3Q15 lattice is used for the lattice-Boltzmann algorithm.
|
||||
If walls are present, they are assumed to be stationary.
|
||||
|
||||
----------
|
||||
|
||||
@ -403,3 +354,5 @@ If walls are present, they are assumed to be stationary.
|
||||
.. _Adhikari:
|
||||
|
||||
**(Adhikari et al.)** Adhikari, R., Stratford, K., Cates, M. E., and Wagner, A. J., Fluctuating lattice Boltzmann, Europhys. Lett. 71 (2005) 473-479.
|
||||
|
||||
|
||||
|
||||
@ -38,7 +38,7 @@ lattice-Boltzmann fluid is present.
|
||||
|
||||
Zero the total linear momentum of the system, including both the atoms
|
||||
specified by group-ID and the lattice-Boltzmann fluid every nevery
|
||||
timesteps. This is accomplished by adjusting the particle velocities
|
||||
timesteps. If there are no atoms specified by group-ID only the fluid momentum is affected. This is accomplished by adjusting the particle velocities
|
||||
and the fluid velocities at each lattice site.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -23,43 +23,4 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Update the positions and velocities of the individual particles
|
||||
described by *group-ID*, experiencing velocity-dependent hydrodynamic
|
||||
forces, using the integration algorithm described in :ref:`Mackay et al. <Mackay1>`. This integration algorithm should only be used if a
|
||||
user-specified value for the force-coupling constant used in :doc:`fix lb/fluid <fix_lb_fluid>` has been set; do not use this integration
|
||||
algorithm if the force coupling constant has been set by default.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
||||
are relevant to this fix. No global or per-atom quantities are stored
|
||||
by this fix for access by various :doc:`output commands <Howto_output>`.
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the LATBOLTZ package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package <Build_package>` page for more info.
|
||||
|
||||
Can only be used if a lattice-Boltzmann fluid has been created via the
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
||||
command.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none.
|
||||
|
||||
----------
|
||||
|
||||
.. _Mackay1:
|
||||
|
||||
**(Mackay et al.)** Mackay, F. E., Ollila, S.T.T., and Denniston, C., Hydrodynamic Forces Implemented into LAMMPS through a lattice-Boltzmann fluid, Computer Physics Communications 184 (2013) 2021-2031.
|
||||
This fix was part of the old LATBOLTZ package and is now defunct. LAMMPS standard integrator :doc:`fix NVE <fix_nve>` can be used in its place.
|
||||
|
||||
@ -46,122 +46,6 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This fix is based on the :doc:`fix rigid <fix_rigid>` command, and was
|
||||
created to be used in place of that fix, to integrate the equations of
|
||||
motion of spherical rigid bodies when a lattice-Boltzmann fluid is
|
||||
present with a user-specified value of the force-coupling constant.
|
||||
The fix uses the integration algorithm described in :ref:`Mackay et
|
||||
al. <Mackay>` to update the positions, velocities, and orientations of
|
||||
a set of spherical rigid bodies experiencing velocity dependent
|
||||
hydrodynamic forces. The spherical bodies are assumed to rotate as
|
||||
solid, uniform density spheres, with moments of inertia calculated
|
||||
using the combined sum of the masses of all the constituent particles
|
||||
(which are assumed to be point particles).
|
||||
This fix was part of the old LATBOLTZ package and is now defunct. LAMMPS standard :doc:`fix rigid <fix_rigid>` can be used in its place.
|
||||
|
||||
----------
|
||||
|
||||
By default, all of the atoms that this fix acts on experience a
|
||||
hydrodynamic force due to the presence of the lattice-Boltzmann fluid.
|
||||
However, the *innerNodes* keyword allows the user to specify atoms
|
||||
belonging to a rigid object which do not interact with the
|
||||
lattice-Boltzmann fluid (i.e. these atoms do not feel a hydrodynamic
|
||||
force from the lattice-Boltzmann fluid). This can be used to
|
||||
distinguish between atoms on the surface of a non-porous object, and
|
||||
those on the inside.
|
||||
|
||||
This feature can be used, for example, when implementing a hard sphere
|
||||
interaction between two spherical objects. Instead of interactions
|
||||
occurring between the particles on the surfaces of the two spheres, it
|
||||
is desirable simply to place an atom at the center of each sphere,
|
||||
which does not contribute to the hydrodynamic force, and have these
|
||||
central atoms interact with one another.
|
||||
|
||||
----------
|
||||
|
||||
Apart from the features described above, this fix is very similar to
|
||||
the rigid fix (although it includes fewer optional arguments, and
|
||||
assumes the constituent atoms are point particles); see
|
||||
:doc:`fix rigid <fix_rigid>` for a complete documentation.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about the *rigid* and *rigid/nve* fixes are written to
|
||||
:doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the added forces on atoms to
|
||||
both the global pressure and per-atom stress of the system via the
|
||||
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||
stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
Similar to the :doc:`fix rigid <fix_rigid>` command: The rigid fix
|
||||
computes a global scalar which can be accessed by various :doc:`output
|
||||
commands <Howto_output>`. The scalar value calculated by these fixes
|
||||
is "intensive". The scalar is the current temperature of the
|
||||
collection of rigid bodies. This is averaged over all rigid bodies
|
||||
and their translational and rotational degrees of freedom. The
|
||||
translational energy of a rigid body is 1/2 m v\^2, where m = total
|
||||
mass of the body and v = the velocity of its center of mass. The
|
||||
rotational energy of a rigid body is 1/2 I w\^2, where I = the moment
|
||||
of inertia tensor of the body and w = its angular velocity. Degrees
|
||||
of freedom constrained by the *force* and *torque* keywords are
|
||||
removed from this calculation.
|
||||
|
||||
All of these fixes compute a global array of values which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. The number
|
||||
of rows in the array is equal to the number of rigid bodies. The
|
||||
number of columns is 15. Thus for each rigid body, 15 values are
|
||||
stored: the xyz coords of the center of mass (COM), the xyz components
|
||||
of the COM velocity, the xyz components of the force acting on the
|
||||
COM, the xyz components of the torque acting on the COM, and the xyz
|
||||
image flags of the COM, which have the same meaning as image flags for
|
||||
atom positions (see the "dump" command). The force and torque values
|
||||
in the array are not affected by the *force* and *torque* keywords in
|
||||
the fix rigid command; they reflect values before any changes are made
|
||||
by those keywords.
|
||||
|
||||
The ordering of the rigid bodies (by row in the array) is as follows.
|
||||
For the *single* keyword there is just one rigid body. For the
|
||||
*molecule* keyword, the bodies are ordered by ascending molecule ID.
|
||||
For the *group* keyword, the list of group IDs determines the ordering
|
||||
of bodies.
|
||||
|
||||
The array values calculated by these fixes are "intensive", meaning
|
||||
they are independent of the number of atoms in the simulation.
|
||||
|
||||
No parameter of these fixes can be used with the *start/stop* keywords
|
||||
of the :doc:`run <run>` command. These fixes are not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the LATBOLTZ package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` page for more info.
|
||||
|
||||
Can only be used if a lattice-Boltzmann fluid has been created via the
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
||||
command. Should only be used if the force coupling constant used in
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` has been set by the user; this
|
||||
integration fix cannot be used if the force coupling constant is set
|
||||
by default.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>`, :doc:`fix lb/pc <fix_lb_pc>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The defaults are force \* on on on, and torque \* on on on.
|
||||
|
||||
----------
|
||||
|
||||
.. _Mackay:
|
||||
|
||||
**(Mackay et al.)** Mackay, F. E., Ollila, S.T.T., and Denniston, C., Hydrodynamic Forces Implemented into LAMMPS through a lattice-Boltzmann fluid, Computer Physics Communications 184 (2013) 2021-2031.
|
||||
|
||||
@ -25,26 +25,13 @@ Description
|
||||
|
||||
This fix is similar to the :doc:`fix viscous <fix_viscous>` command, and
|
||||
is to be used in place of that command when a lattice-Boltzmann fluid
|
||||
is present, and the user wishes to integrate the particle motion using
|
||||
one of the built in LAMMPS integrators.
|
||||
is present using the :doc:`fix lb/fluid <fix_lb_fluid>`. This should be used in conjunction with one of the built-in LAMMPS integrators, such as :doc:`fix NVE <fix_nve>` or :doc:`fix rigid <fix_rigid>`.
|
||||
|
||||
This fix adds a force, F = - Gamma\*(velocity-fluid_velocity), to each
|
||||
atom, where Gamma is the force coupling constant described in the :doc:`fix lb/fluid <fix_lb_fluid>` command (which applies an equal and
|
||||
opposite force to the fluid).
|
||||
|
||||
.. note::
|
||||
|
||||
This fix should only be used in conjunction with one of the
|
||||
built in LAMMPS integrators; it should not be used with the :doc:`fix lb/pc <fix_lb_pc>` or :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>` integrators, which
|
||||
already include the hydrodynamic forces. These latter fixes should
|
||||
only be used if the force coupling constant has been set by the user
|
||||
(instead of using the default value); if the default force coupling
|
||||
value is used, then this fix provides the only method for adding the
|
||||
hydrodynamic forces to the particles.
|
||||
This fix adds a viscous force to each atom to cause it move with the same velocity as the fluid (an equal and opposite force is applied to the fluid via :doc:`fix lb/fluid <fix_lb_fluid>`). When :doc:`fix lb/fluid <fix_lb_fluid>` is called with the noise option, the atoms will also experience random forces which will thermalize them to the same temperature as the fluid. In this way, the combination of this fix with :doc:`fix lb/fluid <fix_lb_fluid>` and a LAMMPS integrator like :doc:`fix NVE <fix_nve>` is analogous to :doc:`fix langevin <fix_langevin>` except here the fluid is explicit. The temperature of the particles can be monitored via the scalar output of :doc:`fix lb/fluid <fix_lb_fluid>`.
|
||||
|
||||
----------
|
||||
|
||||
For further details, as well as descriptions and results of several
|
||||
For details of an earlier implementation of this fix, as well as descriptions and results of several
|
||||
test runs, see :ref:`Mackay et al. <Mackay3>`. Please include a citation to
|
||||
this paper if this fix is used in work contributing to published
|
||||
research.
|
||||
@ -78,14 +65,11 @@ Can only be used if a lattice-Boltzmann fluid has been created via the
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
||||
command.
|
||||
|
||||
This fix should not be used if either the :doc:`fix lb/pc <fix_lb_pc>`
|
||||
or :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>` integrator is
|
||||
used.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>`, :doc:`fix lb/pc <fix_lb_pc>`, :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`
|
||||
:doc:`fix lb/fluid <fix_lb_fluid>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
@ -6,10 +6,10 @@
|
||||
# 280 x 280 x 101 lattice-Boltzmann grid sites. #
|
||||
# #
|
||||
# This simulation is used to illustrate the simulation time of a realistic #
|
||||
# implementation of the lb_fluid fix. #
|
||||
# implementation of the lb/fluid fix. #
|
||||
# The data file "confinedcolloids.dat" is quite large and so is not #
|
||||
# included here. It can be obtained from: #
|
||||
# http://www.apmaths.uwo.ca/~cdennist/confinedcolloids.dat.gz #
|
||||
# http://publish.uwo.ca/~cdennist/confinedcolloids.dat.gz #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# results64.out #
|
||||
@ -19,7 +19,7 @@ units micro
|
||||
dimension 3
|
||||
boundary p p f
|
||||
atom_style molecular
|
||||
read_data confinedcolloids.dat
|
||||
read_data ../confinedcolloids.dat
|
||||
|
||||
mass * 0.00010287
|
||||
|
||||
@ -62,23 +62,18 @@ pair_coeff * * 0.0 0.0 1.572
|
||||
pair_coeff 1 1 10.0 1.400492785 1.572
|
||||
pair_modify shift yes
|
||||
|
||||
timestep 0.0006
|
||||
timestep 0.001
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles...this is accomplished through the use of the viscous_lb fix).
|
||||
# Use the standard LB integration scheme, a fluid density = 1.0,
|
||||
# fluid viscosity = 1.0, lattice spacing dx=0.06, and mass unit, dm=0.00003.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation makes use of the surface area
|
||||
# of the composite object represented by each particle node. Since this is
|
||||
# not equal to dx*dx, it is input through the setArea keyword (i.e.
|
||||
# particles of type 2 correspond to a surface area of 0.0018337299).
|
||||
# Implement walls moving at speeds of 20.0 in opposite directions.
|
||||
# particles...this is accomplished through the use of the lb/viscous fix).
|
||||
# Use a fluid density = 1.0, fluid viscosity = 1.0, (water at STP) and a
|
||||
# lattice spacing dx=0.06.
|
||||
# Implement top/bottomw walls moving at speeds of 20.0 in opposite directions
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 1 1 1.0 1.0 dx 0.06 dm 0.00003 setArea 2 0.0018337299 zwall_velocity -20.0 20.0
|
||||
fix 1 FluidAtoms lb/fluid 1 1.0 1.0 dx 0.06 zwall_velocity -20.0 20.0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force due to the fluid onto the FluidAtoms particles (again,
|
||||
@ -105,4 +100,6 @@ fix walllo ForceAtoms wall/lj126 zlo 0.0 20.0 0.8071542386 0.906 units box
|
||||
|
||||
#dump ParticleTracking ForceAtoms custom 50 test.track id mol x y z vx vy vz
|
||||
|
||||
thermo 50
|
||||
|
||||
run 400
|
||||
@ -1,41 +1,83 @@
|
||||
LAMMPS (22 Feb 2013)
|
||||
Scanning data file ...
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (0 0 0) to (16.8 16.8 6)
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (16.800000 16.800000 6.0000000)
|
||||
4 by 8 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
1734240 atoms
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
0 = max # of 1-2 neighbors
|
||||
0 = max # of 1-3 neighbors
|
||||
0 = max # of 1-4 neighbors
|
||||
1 = max # of special neighbors
|
||||
special bond factors lj: 0 0 0
|
||||
special bond factors coul: 0 0 0
|
||||
0 = max # of 1-2 neighbors
|
||||
0 = max # of 1-3 neighbors
|
||||
0 = max # of 1-4 neighbors
|
||||
1 = max # of special neighbors
|
||||
special bonds CPU = 0.018 seconds
|
||||
read_data CPU = 1.916 seconds
|
||||
480 atoms in group ForceAtoms
|
||||
1733760 atoms in group FluidAtoms
|
||||
Using a lattice-Boltzmann grid of 280 by 280 by 101 total grid points. (fix_lb_fluid.cpp:341)
|
||||
480 rigid bodies with 1734240 atoms
|
||||
Setting up run ...
|
||||
Memory usage per processor = 79.5765 Mbytes
|
||||
Using a lattice-Boltzmann grid of 280 by 280 by 101 total grid points. (../fix_lb_fluid.cpp:477)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1023)
|
||||
First Run initialized
|
||||
480 rigid bodies with 1734240 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.602
|
||||
ghost atom cutoff = 1.602
|
||||
binsize = 0.801, bins = 21 21 8
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : micro
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 97.31 | 97.33 | 97.36 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 0
|
||||
400 65143387 608.21941 0 1902.0097 4.5858406
|
||||
Loop time of 503.932 on 64 procs for 400 steps with 1734240 atoms
|
||||
50 4511970.8 0 0 89.610701 0.21526205
|
||||
100 16113793 0 0 320.0305 -0.54714356
|
||||
150 31550748 67.191512 0 693.81006 1.2310415
|
||||
200 46439326 498.87168 0 1421.1872 4.0383841
|
||||
250 61684647 1043.9263 0 2269.0239 6.4736851
|
||||
300 80760268 1365.1861 0 2969.138 8.4186043
|
||||
350 1.0442842e+08 1296.934 0 3370.9509 8.9271065
|
||||
400 1.2759824e+08 817.33984 0 3351.5245 6.8724618
|
||||
Loop time of 528.696 on 64 procs for 400 steps with 1734240 atoms
|
||||
|
||||
Pair time (%) = 0.151149 (0.0299939)
|
||||
Bond time (%) = 0.000111468 (2.21197e-05)
|
||||
Neigh time (%) = 308.546 (61.2278)
|
||||
Comm time (%) = 88.6413 (17.5899)
|
||||
Outpt time (%) = 0.00124746 (0.000247546)
|
||||
Other time (%) = 106.592 (21.152)
|
||||
Performance: 65368.335 ns/day, 0.000 hours/ns, 0.757 timesteps/s
|
||||
99.2% CPU use with 64 MPI tasks x no OpenMP threads
|
||||
|
||||
Nlocal: 27097.5 ave 27415 max 26825 min
|
||||
Histogram: 8 0 12 12 8 0 8 4 8 4
|
||||
Nghost: 159582 ave 161567 max 158145 min
|
||||
Histogram: 32 0 0 0 0 4 12 0 0 16
|
||||
Neighs: 3.75 ave 6 max 2 min
|
||||
Histogram: 16 0 16 0 0 16 0 0 0 16
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.053098 | 0.071612 | 0.096152 | 4.1 | 0.01
|
||||
Bond | 9.7577e-05 | 0.00012984 | 0.00017322 | 0.0 | 0.00
|
||||
Neigh | 301.06 | 394.1 | 493.41 | 450.6 | 74.54
|
||||
Comm | 7.8705 | 106.94 | 200.63 | 865.5 | 20.23
|
||||
Output | 0.0047098 | 0.0052866 | 0.0055549 | 0.3 | 0.00
|
||||
Modify | 25.511 | 26.848 | 28.764 | 17.8 | 5.08
|
||||
Other | | 0.736 | | | 0.14
|
||||
|
||||
Total # of neighbors = 240
|
||||
Ave neighs/atom = 0.000138389
|
||||
Ave special neighs/atom = 0
|
||||
Neighbor list builds = 68
|
||||
Nlocal: 27097.5 ave 28368 max 25504 min
|
||||
Histogram: 16 0 0 8 8 0 0 0 16 16
|
||||
Nghost: 166100.0 ave 167736 max 164146 min
|
||||
Histogram: 16 0 4 12 0 0 0 0 12 20
|
||||
Neighs: 14.0625 ave 21 max 6 min
|
||||
Histogram: 8 4 4 0 12 0 8 12 12 4
|
||||
|
||||
Total # of neighbors = 900
|
||||
Ave neighs/atom = 0.00051895931
|
||||
Ave special neighs/atom = 0.0000000
|
||||
Neighbor list builds = 144
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 3.490595
|
||||
LB update time: 8.100787
|
||||
LB PCalc time: 4.473729
|
||||
LB fluidForce time: 7.598387
|
||||
LB CorrectU time: 1.830964
|
||||
Total wall time: 0:08:54
|
||||
|
||||
16701
examples/PACKAGES/latboltz/diffusingsphere/out.lammpstrj
Normal file
16701
examples/PACKAGES/latboltz/diffusingsphere/out.lammpstrj
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
197
examples/PACKAGES/latboltz/diffusingsphere/trapnewsphere.in
Normal file
197
examples/PACKAGES/latboltz/diffusingsphere/trapnewsphere.in
Normal file
@ -0,0 +1,197 @@
|
||||
#===========================================================================#
|
||||
# Large colloidal sphere difusing around. #
|
||||
# #
|
||||
# In the first stage, the sphere is constructed by condensing atoms onto #
|
||||
# the surface of a spherica region. #
|
||||
# #
|
||||
# To run this example, LAMMPS needs to be compiled with a the following #
|
||||
# packages: RIGID, LATBOTLZ #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'dump.polymer.lammpstrj' #
|
||||
# and viewed using, e.g., the VMD software. #
|
||||
# #
|
||||
#===========================================================================#
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p p
|
||||
|
||||
region mybox block -24 24 -24 24 -24 24
|
||||
|
||||
# flag indicating whether sphere will be bonded or rigid, 0 or 1
|
||||
variable is_bonded equal 0
|
||||
# timestep for the LB run (setup uses different timesteps)
|
||||
variable tstep equal 0.00025
|
||||
# number of stencil points in any direction. could be 2, 3, or 4
|
||||
variable stpts equal 2
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"create_box 1 mybox bond/types 10 extra/bond/per/atom 12" &
|
||||
else &
|
||||
"create_box 1 mybox"
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create a spherical region and then fill it with atoms
|
||||
#----------------------------------------------------------------------------
|
||||
region mysphereinside sphere 0 0 0 4.0
|
||||
|
||||
#variable n_nodes equal 216
|
||||
variable n_nodes equal 284
|
||||
create_atoms 1 random ${n_nodes} 1234 mysphereinside units box
|
||||
|
||||
pair_style soft 1.0
|
||||
pair_coeff * * 0.0
|
||||
variable prefactor equal ramp(0,30)
|
||||
fix 1 all adapt 1 pair soft a * * v_prefactor
|
||||
|
||||
mass * 1.0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Set up and do an initial run to push the atoms apart as the random creation
|
||||
# could have them overlapping too much for stability.
|
||||
#----------------------------------------------------------------------------
|
||||
timestep 0.002
|
||||
|
||||
# Define sphere where minimum of wall potential is at r=4 so
|
||||
# regions is 4 + (2/5)^(1/6) sigma
|
||||
region mysphere sphere 0 0 0 5.28756
|
||||
fix wall all wall/region mysphere lj93 15.0 1.5 5.28
|
||||
|
||||
fix 2 all nve
|
||||
|
||||
dump mydump all atom 10000 out.lammpstrj
|
||||
|
||||
run 20000
|
||||
|
||||
unfix wall
|
||||
fix wall all wall/region mysphere lj93 50.0 1.5 5.68
|
||||
|
||||
unfix 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Do a run to condense the atoms onto the spherical surface and anneal them
|
||||
# so they will be orderly aranged onto a semi-triangular mesh on the sphere
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 1.68359
|
||||
#pair_coeff * * 0.002 1.5 1.68369
|
||||
pair_coeff * * 0.0005 1.5 1.68369
|
||||
|
||||
fix 3 all langevin 1.5 0.01 100.0 5678
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
comm_modify cutoff 2.5
|
||||
|
||||
run 500000
|
||||
|
||||
minimize 0.0 1.0e-8 1000 100000
|
||||
|
||||
unfix wall
|
||||
unfix 2
|
||||
unfix 3
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# If bonded, bond the atoms together at something close to their current
|
||||
# configuration
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
variable total_mass equal 0.002398
|
||||
variable node_mass equal "v_total_mass / v_n_nodes"
|
||||
mass * ${node_mass}
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"bond_style harmonic" &
|
||||
"bond_coeff 1 25.0 0.869333" &
|
||||
"bond_coeff 2 25.0 0.948" &
|
||||
"bond_coeff 3 25.0 1.026666" &
|
||||
"bond_coeff 4 25.0 1.105333" &
|
||||
"bond_coeff 5 25.0 1.184" &
|
||||
"bond_coeff 6 25.0 1.262666" &
|
||||
"bond_coeff 7 25.0 1.341333" &
|
||||
"bond_coeff 8 25.0 1.42" &
|
||||
"bond_coeff 9 25.0 1.498666" &
|
||||
"bond_coeff 10 25.0 1.577333" &
|
||||
"create_bonds many all all 1 0.83 0.908666" &
|
||||
"create_bonds many all all 2 0.908667 0.987333" &
|
||||
"create_bonds many all all 3 0.987334 1.066" &
|
||||
"create_bonds many all all 4 1.066001 1.144666" &
|
||||
"create_bonds many all all 5 1.144667 1.223333" &
|
||||
"create_bonds many all all 6 1.223334 1.302" &
|
||||
"create_bonds many all all 7 1.302001 1.380666" &
|
||||
"create_bonds many all all 8 1.380667 1.459333" &
|
||||
"create_bonds many all all 9 1.459334 1.538" &
|
||||
"create_bonds many all all 10 1.538001 1.61667"
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"pair_style lj/cut 5.05108" &
|
||||
"pair_coeff * * 0.5 4.5" &
|
||||
else &
|
||||
"pair_style lj/cut 1.2" &
|
||||
"pair_coeff * * 0.0 0.0"
|
||||
|
||||
timestep ${tstep}
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# You could uncomment the following lines and then turn off the noise and
|
||||
# comment out the trap (following) to instead do a run that drags the
|
||||
# sphere through the fluid to measure the drag force.
|
||||
#----------------------------------------------------------------------------
|
||||
#variable total_force equal 8.0
|
||||
#variable node_force equal "v_total_force / v_n_nodes"
|
||||
#variable oscillateY equal cos(step*0.0005)/(-0.004+50*v_tstep)/v_n_nodes
|
||||
#variable oscillateZ equal cos(step*0.0003)/(-0.004+50*v_tstep)/v_n_nodes
|
||||
#fix drag all addforce ${node_force} v_oscillateY v_oscillateZ
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Trap the sphere along x (could be done experimentally using optical
|
||||
# tweezers.
|
||||
#----------------------------------------------------------------------------
|
||||
variable fx atom -x*4.14195/284.0
|
||||
fix trap all addforce v_fx 0.0 0.0 # needs to go before fix lb/fluid and lb/viscous
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Set up the lb/fluid parameters for water and at a temperature of 300 K. If
|
||||
# the colloid is integrated with the rigid fix, the dof are not
|
||||
# automatically calculated correctly but as this would then be a rigid
|
||||
# sphere it is clear it should have 6 degrees of freedom.
|
||||
#----------------------------------------------------------------------------
|
||||
if "${is_bonded} == 1" then &
|
||||
"fix FL all lb/fluid 1 1.0 0.0009982071 stencil ${stpts} dx 1.2 noise 300.0 181920" &
|
||||
else &
|
||||
"fix FL all lb/fluid 1 1.0 0.0009982071 stencil ${stpts} dx 1.2 noise 300.0 181920 dof 6"
|
||||
|
||||
fix 2 all lb/viscous
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"fix 3 all nve" &
|
||||
else &
|
||||
"fix 3 all rigid group 1 all"
|
||||
|
||||
#equilibration run
|
||||
run 10000
|
||||
|
||||
# data gathering run
|
||||
reset_timestep 0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables containing the positions/velocity of the colloids center
|
||||
# of mass.
|
||||
#----------------------------------------------------------------------------
|
||||
variable cmx equal xcm(all,x)
|
||||
variable cmy equal xcm(all,y)
|
||||
variable cmz equal xcm(all,z)
|
||||
|
||||
variable vcmx equal vcm(all,x)
|
||||
variable vcmy equal vcm(all,y)
|
||||
variable vcmz equal vcm(all,z)
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"variable comdatafile string trap_nb${n_nodes}_st${stpts}_dt${tstep}.out" &
|
||||
else &
|
||||
"variable comdatafile string trap_n${n_nodes}_st${stpts}_dt${tstep}.out"
|
||||
|
||||
fix printCM all print 10 "$(step) $(f_FL) ${cmx} ${cmy} ${cmz} ${vcmx} ${vcmy} ${vcmz}" file ${comdatafile} screen no
|
||||
|
||||
run 10000
|
||||
#run 25000000
|
||||
218
examples/PACKAGES/latboltz/diffusingsphere/trapnewsphere.out
Normal file
218
examples/PACKAGES/latboltz/diffusingsphere/trapnewsphere.out
Normal file
@ -0,0 +1,218 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Created orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 284 atoms
|
||||
using box units in orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
create_atoms CPU = 0.001 seconds
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.1
|
||||
ghost atom cutoff = 1.1
|
||||
binsize = 0.55, bins = 88 88 88
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair soft, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 0.002
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.947 | 4.947 | 4.947 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 0
|
||||
20000 317.05614 618.63581 0 2476.8578 0.030715
|
||||
Loop time of 1.04979 on 4 procs for 20000 steps with 284 atoms
|
||||
|
||||
Performance: 3292081.736 ns/day, 0.000 hours/ns, 19051.399 timesteps/s
|
||||
99.8% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.10763 | 0.11963 | 0.13214 | 2.9 | 11.40
|
||||
Neigh | 0.38332 | 0.41159 | 0.43122 | 2.8 | 39.21
|
||||
Comm | 0.31394 | 0.34969 | 0.3981 | 5.1 | 33.31
|
||||
Output | 0.0029418 | 0.0035883 | 0.0043197 | 0.8 | 0.34
|
||||
Modify | 0.13951 | 0.14727 | 0.15199 | 1.3 | 14.03
|
||||
Other | | 0.01802 | | | 1.72
|
||||
|
||||
Nlocal: 71.0000 ave 73 max 69 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 54.7500 ave 57 max 53 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Neighs: 107.250 ave 127 max 85 min
|
||||
Histogram: 1 0 0 1 0 0 0 0 1 1
|
||||
|
||||
Total # of neighbors = 429
|
||||
Ave neighs/atom = 1.5105634
|
||||
Neighbor list builds = 1996
|
||||
Dangerous builds = 1993
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.98369
|
||||
ghost atom cutoff = 2.5
|
||||
binsize = 0.991845, bins = 49 49 49
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 20000
|
||||
Time step : 0.002
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.279 | 4.280 | 4.280 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
20000 317.05614 626.83186 0 2485.0538 0.034256287
|
||||
520000 0.20789564 780.54747 0 781.76592 0.028916791
|
||||
Loop time of 20.94 on 4 procs for 500000 steps with 284 atoms
|
||||
|
||||
Performance: 4126072.144 ns/day, 0.000 hours/ns, 23877.732 timesteps/s
|
||||
99.9% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 4.3543 | 5.0458 | 5.6845 | 21.6 | 24.10
|
||||
Neigh | 1.3816 | 1.444 | 1.5232 | 4.7 | 6.90
|
||||
Comm | 6.2693 | 7.0156 | 7.7783 | 21.0 | 33.50
|
||||
Output | 0.038337 | 0.072704 | 0.11121 | 10.0 | 0.35
|
||||
Modify | 4.9433 | 5.027 | 5.1022 | 2.9 | 24.01
|
||||
Other | | 2.335 | | | 11.15
|
||||
|
||||
Nlocal: 71.0000 ave 74 max 69 min
|
||||
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||||
Nghost: 109.750 ave 113 max 105 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 1 1
|
||||
Neighs: 613.250 ave 718 max 495 min
|
||||
Histogram: 1 0 0 1 0 0 0 1 0 1
|
||||
|
||||
Total # of neighbors = 2453
|
||||
Ave neighs/atom = 8.6373239
|
||||
Neighbor list builds = 13515
|
||||
Dangerous builds = 0
|
||||
Setting up cg style minimization ...
|
||||
Unit style : nano
|
||||
Current step : 520000
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.404 | 5.405 | 5.405 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
520000 0.20789564 780.54747 0 781.76592 0.028916791
|
||||
520004 0.20789564 780.00993 0 781.22838 0.02889732
|
||||
Loop time of 0.0052249 on 4 procs for 4 steps with 284 atoms
|
||||
|
||||
90.8% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = linesearch alpha is zero
|
||||
Energy initial, next-to-last, final =
|
||||
780.547473373201 780.009929329778 780.009929329778
|
||||
Force two-norm initial, final = 40.166574 13.723713
|
||||
Force max component initial, final = 4.2404394 1.5423956
|
||||
Final line search alpha, max atom move = 6.0381565e-11 9.3132257e-11
|
||||
Iterations, force evaluations = 4 69
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.000733 | 0.00099598 | 0.0013314 | 0.0 | 19.06
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.0006855 | 0.0010138 | 0.0012766 | 0.7 | 19.40
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0.0002038 | 0.00023407 | 0.0003163 | 0.0 | 4.48
|
||||
Other | | 0.002981 | | | 57.05
|
||||
|
||||
Nlocal: 71.0000 ave 72 max 69 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 109.750 ave 113 max 107 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
Neighs: 612.750 ave 726 max 504 min
|
||||
Histogram: 1 0 0 1 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 2451
|
||||
Ave neighs/atom = 8.6302817
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
Using a lattice-Boltzmann grid of 40 by 40 by 40 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
1 rigid bodies with 284 atoms
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 520004
|
||||
Time step : 0.00025
|
||||
Per MPI rank memory allocation (min/avg/max) = 6.309 | 6.309 | 6.309 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
520004 8.9102565e-07 0 0 1.8452924e-08 6.7761632e-05
|
||||
530004 3.474402 0 0 0.071954018 -0.00061159689
|
||||
Loop time of 252.92 on 4 procs for 10000 steps with 284 atoms
|
||||
|
||||
Performance: 854.024 ns/day, 0.028 hours/ns, 39.538 timesteps/s
|
||||
100.0% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.083731 | 0.090623 | 0.098802 | 1.8 | 0.04
|
||||
Neigh | 0.016581 | 0.017116 | 0.018055 | 0.4 | 0.01
|
||||
Comm | 0.18954 | 0.19805 | 0.20528 | 1.3 | 0.08
|
||||
Output | 0.0011027 | 0.0018302 | 0.002624 | 1.3 | 0.00
|
||||
Modify | 252.35 | 252.37 | 252.39 | 0.1 | 99.78
|
||||
Other | | 0.2466 | | | 0.10
|
||||
|
||||
Nlocal: 71.0000 ave 84 max 59 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Nghost: 110.750 ave 121 max 101 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Neighs: 243.250 ave 285 max 209 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
|
||||
Total # of neighbors = 973
|
||||
Ave neighs/atom = 3.4260563
|
||||
Neighbor list builds = 52
|
||||
Dangerous builds = 0
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 0.00025
|
||||
Per MPI rank memory allocation (min/avg/max) = 6.309 | 6.309 | 6.309 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 3.474402 0 0 0.071954018 0.00181615
|
||||
10000 2.6284662 0 0 0.054434894 0.00098091301
|
||||
Loop time of 296.345 on 4 procs for 10000 steps with 284 atoms
|
||||
|
||||
Performance: 728.880 ns/day, 0.033 hours/ns, 33.744 timesteps/s
|
||||
99.9% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.097394 | 0.10852 | 0.12099 | 3.3 | 0.04
|
||||
Neigh | 0.014447 | 0.015052 | 0.015762 | 0.4 | 0.01
|
||||
Comm | 0.23755 | 0.24986 | 0.26167 | 2.3 | 0.08
|
||||
Output | 0.0022544 | 0.0025083 | 0.0025944 | 0.3 | 0.00
|
||||
Modify | 295.67 | 295.69 | 295.72 | 0.1 | 99.78
|
||||
Other | | 0.28 | | | 0.09
|
||||
|
||||
Nlocal: 71.0000 ave 87 max 54 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 110.000 ave 125 max 100 min
|
||||
Histogram: 1 1 0 0 1 0 0 0 0 1
|
||||
Neighs: 243.250 ave 264 max 207 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 1 1
|
||||
|
||||
Total # of neighbors = 973
|
||||
Ave neighs/atom = 3.4260563
|
||||
Neighbor list builds = 53
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 288.718806
|
||||
LB update time: 135.577114
|
||||
LB PCalc time: 76.637579
|
||||
LB fluidForce time: 25.590260
|
||||
LB CorrectU time: 19.713186
|
||||
Total wall time: 0:09:31
|
||||
File diff suppressed because it is too large
Load Diff
102
examples/PACKAGES/latboltz/dragforce/drag_n4_st3_dt0.00025.out
Normal file
102
examples/PACKAGES/latboltz/dragforce/drag_n4_st3_dt0.00025.out
Normal file
@ -0,0 +1,102 @@
|
||||
# Fix print output for fix printCM
|
||||
0 0 0 -5.00000000070583e-08 0 0 0
|
||||
100 0.000862030487945766 0.0123054296765635 0.0122731465590126 0.0388471409686686 0.554171814767862 0.549353841801444
|
||||
200 0.00185887929142589 0.026504860571345 0.0263575026345381 0.0406164349263177 0.577485522778581 0.572358123657981
|
||||
300 0.00288609111410669 0.041071186430552 0.0407387949853162 0.0414733855376221 0.586334796005238 0.579029199408148
|
||||
400 0.00392999369142328 0.0557729852014459 0.0552309274319543 0.0420073620501712 0.589116414842769 0.579447580483091
|
||||
500 0.00498536275941171 0.070499164057003 0.0697415367523594 0.0424046217549586 0.588483528276922 0.579713082803989
|
||||
600 0.00604958471579167 0.0851758456067289 0.0842109166632151 0.0427225597696811 0.585256835192702 0.578675424528672
|
||||
700 0.00712105404933591 0.0997436526892664 0.0986256150648839 0.0429880258004064 0.579826819459789 0.574965309339321
|
||||
800 0.00819868650413988 0.114150894221279 0.112970143937093 0.0432171820009732 0.572436469824202 0.571379696846873
|
||||
900 0.00928167490285266 0.128350199155429 0.127214300017093 0.0434177041449832 0.563212233113465 0.568141900579381
|
||||
1000 0.0103693800467608 0.142297070506134 0.141346756412092 0.0435952275760965 0.552255756217314 0.563198941286352
|
||||
1100 0.0114612757740303 0.155949207303663 0.155363270006244 0.0437534628364653 0.539645345817638 0.557547826275249
|
||||
1200 0.0125569146112762 0.16926611615961 0.169243664446122 0.0438950800605928 0.525448494610828 0.552385484155222
|
||||
1300 0.0136559090539262 0.182208942626165 0.182971608380899 0.0440222186903751 0.509729009151129 0.546362371549647
|
||||
1400 0.0147579190343771 0.194740388291494 0.196542287352516 0.0441365813451693 0.49254820772961 0.53923843292572
|
||||
1500 0.0158626435855424 0.206824684659766 0.20994260685037 0.0442396069433182 0.473967311999804 0.532221947561911
|
||||
1600 0.016969815144629 0.218427601281069 0.223154967935698 0.0443325350264529 0.454048234578232 0.52490993166384
|
||||
1700 0.0180791952377331 0.229516470517873 0.23617097657798 0.0444164592397298 0.432854159986641 0.516564181615295
|
||||
1800 0.0191905712013339 0.240060223538286 0.248981532998294 0.044492359500651 0.41044987377188 0.507890446812699
|
||||
1900 0.0203037536403243 0.250029432395321 0.261570985506027 0.0445611192532371 0.386901867661691 0.499132572020635
|
||||
2000 0.0214185743448717 0.259396354393085 0.27392793783106 0.0446235485425134 0.36227844753556 0.489625430842279
|
||||
2100 0.0225348845239784 0.268134976647594 0.286044452302522 0.0446803959508529 0.33664970767355 0.479528537282853
|
||||
2200 0.0236525533438346 0.276221059771718 0.297907925422812 0.0447323522651497 0.310087425177735 0.469306149162182
|
||||
2300 0.0247714666787315 0.283632179279284 0.309505839706109 0.0447800603260404 0.282664970647061 0.458617441651712
|
||||
2400 0.0258915259587789 0.290347763502706 0.320829824034913 0.0448241232027665 0.254457178820598 0.44728722136532
|
||||
2500 0.0270126471290237 0.29634912772668 0.331869872099864 0.0448651027638521 0.225540156619441 0.435694872117013
|
||||
2600 0.0281347597089685 0.30161950408948 0.34261406670463 0.0449035206640385 0.195991101443378 0.423810112638771
|
||||
2700 0.0292578058434875 0.306144066595306 0.353053315437221 0.0449398633594251 0.165888127664992 0.41137110526867
|
||||
2800 0.030381739316435 0.309909951263501 0.363179201634917 0.0449745786568748 0.135310062250947 0.398557628586131
|
||||
2900 0.0315065245470535 0.312906271705092 0.372981337255243 0.0450080686588849 0.104336253816866 0.385510764564962
|
||||
3000 0.0326321354733442 0.315124130290068 0.38245041225465 0.0450406882166782 0.0730464235910661 0.372042169913947
|
||||
3100 0.0337585542236816 0.316556625622056 0.391578764333674 0.0450727382300617 0.0415205367630292 0.358160568106331
|
||||
3200 0.034885766256052 0.31719885875625 0.400357663441649 0.0451036547071826 0.00983907573551093 0.344030677469557
|
||||
3300 0.0360136872580489 0.317048008823491 0.408777748573793 0.045129040578256 -0.0219107556190337 0.32955676892105
|
||||
3400 0.0371421729145326 0.316103516604794 0.416830876205518 0.0451489780670191 -0.0536371623936908 0.314668838998143
|
||||
3500 0.0382710977786635 0.314367093900902 0.424509118504444 0.0451643056938233 -0.0852504239010061 0.299493529440764
|
||||
3600 0.039400355723286 0.311842668099774 0.431804221276515 0.0451757343394363 -0.116662994488708 0.284066192756869
|
||||
3700 0.0405298571235071 0.308536328771854 0.438709086698874 0.0451838769711716 -0.147789438945399 0.268314898256792
|
||||
3800 0.0416595266582488 0.304456275109671 0.445217419249879 0.0451892685671837 -0.178546427643007 0.252292051488811
|
||||
3900 0.0427893015653343 0.299612762874147 0.451322687530176 0.0451923807983904 -0.208852773056517 0.236070778082722
|
||||
4000 0.0439191302054448 0.294018050086672 0.457018894174797 0.0451936331558271 -0.238629493808845 0.219614191498541
|
||||
4100 0.0450489708508549 0.287686340949681 0.462300983177224 0.0451934002599296 -0.267799890966025 0.202923522400675
|
||||
4200 0.0461787906402368 0.280633727679951 0.46716400466032 0.0451920174774752 -0.296289636112744 0.186067111728447
|
||||
4300 0.0473085646518621 0.272878130115369 0.471603197062402 0.0451897853348954 -0.324026864816915 0.169048732639397
|
||||
4400 0.0484382750721604 0.264439232972262 0.475614593651548 0.0451869725702152 -0.350942268020778 0.151851130542203
|
||||
4500 0.049567910442748 0.255338420725821 0.479194641553675 0.045183819044704 -0.37696918707268 0.134518378555459
|
||||
4600 0.0506974649686312 0.245598710206154 0.482339905708537 0.0451805383879157 -0.402043707551555 0.117079995982193
|
||||
4700 0.0518269378826076 0.235244680971009 0.485047513161603 0.0451773197428711 -0.426104742058066 0.0995240797086898
|
||||
4800 0.052956332860714 0.224302403572179 0.487315158338437 0.0451743295087643 -0.449094108942282 0.0818709366680246
|
||||
4900 0.0540856574759206 0.212799365966729 0.489140744652625 0.0451717131537436 -0.470956607153122 0.0641572680070745
|
||||
5000 0.0552149226836002 0.200764398290593 0.490522557427433 0.0451695961979473 -0.491640075621893 0.04638589199498
|
||||
5100 0.0563441423344801 0.188227596194827 0.491459457220784 0.045168084821581 -0.511095441430305 0.0285636095658589
|
||||
5200 0.057473332702688 0.17522024305006 0.491950642641828 0.0451672665812737 -0.529276763383753 0.0107219134977892
|
||||
5300 0.0586025120187606 0.161774731300966 0.491995614110831 0.0451672105484937 -0.546141262620913 -0.00712340874154904
|
||||
5400 0.0597317000030321 0.147924483163387 0.491594377124997 0.0451679668568151 -0.561649340260399 -0.0249682994538472
|
||||
5500 0.0608609173904777 0.133703870891375 0.490747365943808 0.0451695662898269 -0.575764591653344 -0.0427904594790811
|
||||
5600 0.0619901854374394 0.119148136830319 0.489455318876335 0.045172019632285 -0.58845381491908 -0.0605675872373609
|
||||
5700 0.0631195254064262 0.104293313359254 0.487719399569343 0.0451753165168183 -0.599687010953726 -0.0782918862578729
|
||||
5800 0.0642489580246837 0.0891761427946867 0.48554123315084 0.0451794242166182 -0.609437382803975 -0.0959482954276833
|
||||
5900 0.0653785029101205 0.0738339973249388 0.482922791336815 0.0451842864271072 -0.617681336848454 -0.113513947143333
|
||||
6000 0.066508177961606 0.0583047989558168 0.479866421958322 0.0451898217427784 -0.624398482710512 -0.13097562667804
|
||||
6100 0.0676379987117821 0.0426269393910158 0.476374926355184 0.0451959219945778 -0.629571635891283 -0.148321352569801
|
||||
6200 0.0687679776380947 0.0268391997711945 0.472451499697091 0.0452024505874852 -0.633186826926119 -0.165530745880477
|
||||
6300 0.0698981234280855 0.010980670154477 0.468099704053854 0.0452092406152506 -0.635233314989177 -0.182586480506518
|
||||
6400 0.0710284401951811 -0.00490933141996686 0.463323535196445 0.0452160926978174 -0.6357036064805 -0.199476058698813
|
||||
6500 0.0721589266379823 -0.0207913404308021 0.45812741824118 0.0452227725683118 -0.634593480754686 -0.216181770202423
|
||||
6600 0.0732895751329617 -0.0366258280722564 0.4525161672434 0.0452290081924521 -0.631902021250181 -0.232684251091254
|
||||
6700 0.0744203707468311 -0.0523732842796794 0.446495021852624 0.0452344861625994 -0.627631650070581 -0.248968525167056
|
||||
6800 0.0755512901476198 -0.0679943016610313 0.440069676657587 0.0452388471144838 -0.621788164979803 -0.265018013055149
|
||||
6900 0.0766823003834517 -0.0834496603398142 0.433246256793092 0.0452416796548797 -0.614380775066988 -0.280812614225028
|
||||
7000 0.0778133574838834 -0.0987004136215648 0.426031330764786 0.0452425120772539 -0.605422129824962 -0.296334220434174
|
||||
7100 0.0789444048161975 -0.113707974241796 0.418431952538327 0.0452408008213928 -0.594928335060022 -0.311565205779314
|
||||
7200 0.0800753710948757 -0.128434200729008 0.410455666617559 0.0452359139442821 -0.582918944331306 -0.326484492981048
|
||||
7300 0.0812061678888613 -0.142841483083547 0.402110518367413 0.0452271068609726 -0.56941690886808 -0.34107027310023
|
||||
7400 0.0823366868879886 -0.156892832550369 0.393405100664375 0.0452137152253101 -0.554451229049732 -0.355302873244928
|
||||
7500 0.0834668517149059 -0.170552623647645 0.384348175871066 0.0451996568242026 -0.538109504133949 -0.3691955162588
|
||||
7600 0.0845966786525954 -0.183787343990598 0.374948167603608 0.0451866668285694 -0.520452068779317 -0.38274791022926
|
||||
7700 0.0857261928989984 -0.196564598620189 0.365213708220604 0.0451746173490727 -0.501519185936364 -0.395949104997471
|
||||
7800 0.0868554160875386 -0.208853033947754 0.355153722643092 0.0451633558994798 -0.481353961460688 -0.408788219630066
|
||||
7900 0.0879843659433281 -0.220622412047369 0.344777414582154 0.0451527246802332 -0.460002566524482 -0.421253498591182
|
||||
8000 0.0891130563099555 -0.23184368872928 0.334094257673578 0.0451425726521896 -0.437514339207557 -0.433334064382642
|
||||
8100 0.0902414974316455 -0.2424890932098 0.323113996077294 0.0451327640586105 -0.413941813252733 -0.445019966270824
|
||||
8200 0.0913696964100858 -0.252532207710901 0.311846632415356 0.0451231839591836 -0.389340685397376 -0.456300911536802
|
||||
8300 0.0924976577671853 -0.261948045581448 0.300302411401681 0.0451137412199365 -0.363769731247534 -0.467166979522632
|
||||
8400 0.0936253840550899 -0.270713126771119 0.288491813206727 0.0451043693754287 -0.337290679181815 -0.477609349083408
|
||||
8500 0.0947528764650488 -0.278805549717671 0.27642554360983 0.0450950257530967 -0.309968050973641 -0.487619421164766
|
||||
8600 0.0958801353970909 -0.286205058917463 0.264114517046721 0.0450856892760242 -0.281868977005235 -0.497188713267531
|
||||
8700 0.0970071609627085 -0.292893107630846 0.251569845366989 0.0450763573660472 -0.253062992836497 -0.506309612902325
|
||||
8800 0.0981339534030675 -0.298852915325574 0.238802829407755 0.0450670423558943 -0.223621822504895 -0.514975070718216
|
||||
8900 0.0992605134153133 -0.304069519580759 0.22582494504124 0.0450577677864475 -0.193619152641678 -0.523178137637988
|
||||
9000 0.100386842388707 -0.308529822260866 0.212647830382011 0.0450485649429167 -0.163130400331202 -0.530912414901356
|
||||
9100 0.101512942559987 -0.312222629827916 0.199283277442076 0.0450394698977844 -0.13223247655603 -0.538172167586218
|
||||
9200 0.102638817103052 -0.315138687696582 0.185743221236983 0.0450305212343208 -0.10100354632644 -0.544951888794609
|
||||
9300 0.103764470171021 -0.317270708558709 0.172039727157391 0.0450217585121602 -0.0695227861974757 -0.551246411933543
|
||||
9400 0.104889906908796 -0.318613394619428 0.158184981612494 0.0450132214234404 -0.0378701397929889 -0.557051185837414
|
||||
9500 0.106015133451531 -0.319163453704509 0.144191282694294 0.0450049494770458 -0.00612607214576512 -0.562362036167608
|
||||
9600 0.107140156919558 -0.318919609223059 0.130071028527096 0.0449969819880669 0.0256286759940099 -0.567175055659959
|
||||
9700 0.108264985414172 -0.317882604002936 0.115836707124747 0.0449893581153677 0.0573133323763313 -0.571486831413926
|
||||
9800 0.109389628012451 -0.316055198056751 0.101500887824999 0.0449821167122573 0.0888473342969765 -0.575294393321441
|
||||
9900 0.110514094754186 -0.313442160379143 0.0870762114315177 0.0449752958236126 0.120150564786057 -0.578595028443573
|
||||
10000 0.111638396610866 -0.310050254915132 0.0725753806410134 0.0449689317481374 0.151143582530835 -0.581386376944959
|
||||
140
examples/PACKAGES/latboltz/dragforce/dragtest.in
Normal file
140
examples/PACKAGES/latboltz/dragforce/dragtest.in
Normal file
@ -0,0 +1,140 @@
|
||||
#===========================================================================#
|
||||
# single particle drag tests #
|
||||
# #
|
||||
# Run consists of a colloidal particle being dragged with a constant force #
|
||||
# through an LB-fluid. The colloidal particle could be single atom or #
|
||||
# be a composite particle. Composite particles could be bonded or just #
|
||||
# rigidly constrained to stay together. #
|
||||
# #
|
||||
# Sample output from this run can be found in the files with ".log" #
|
||||
# located in the same directory. #
|
||||
#===========================================================================#
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p f
|
||||
atom_style molecular
|
||||
|
||||
region mydomain block -24.0 24.0 -24.0 24.0 -24.0 24.0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Set up particles with n_nodes and decide if bonded or rigid
|
||||
#----------------------------------------------------------------------------
|
||||
variable n_nodes equal 4 # 1, 4, 6 are options with definitions below
|
||||
variable is_bonded equal 0 # 0 or 1 (1 only if n_nodes > 1,
|
||||
# bond parameters set for n_node = 4 case)
|
||||
variable stpts equal 3 # 2, 3, 4 number of stencil points in any direction.
|
||||
|
||||
variable tstep equal 0.00025
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"create_box 1 mydomain bond/types 1 extra/bond/per/atom 6" &
|
||||
else &
|
||||
"create_box 1 mydomain"
|
||||
|
||||
if "${n_nodes} == 1" then &
|
||||
"create_atoms 1 single 0.0 0.0 0.0" &
|
||||
elif "${n_nodes} == 4" &
|
||||
"create_atoms 1 single 0.0 0.0 0.204124" &
|
||||
"create_atoms 1 single -0.096225 -0.166667 -0.0680414" &
|
||||
"create_atoms 1 single -0.096225 0.166667 -0.0680414" &
|
||||
"create_atoms 1 single 0.19245 0. -0.0680414" &
|
||||
elif "${n_nodes} == 6" &
|
||||
"create_atoms 1 single 0.204124 0.0000000 0.0000000" &
|
||||
"create_atoms 1 single -0.204124 0.0000000 0.0000000" &
|
||||
"create_atoms 1 single 0.0000000 0.204124 0.0000000" &
|
||||
"create_atoms 1 single 0.0000000 -0.204124 0.0000000" &
|
||||
"create_atoms 1 single 0.0000000 0.0000000 0.204124" &
|
||||
"create_atoms 1 single 0.0000000 0.0000000 -0.204124"
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
comm_modify cutoff 2.5 # cutoff for communcation shoud be at least 2 dx
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interactions between particles & create bonds
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 5.88
|
||||
pair_coeff * * 0.0 0.0 5.88
|
||||
|
||||
variable total_mass equal 0.002398 # particle mass
|
||||
variable node_mass equal "v_total_mass / v_n_nodes"
|
||||
mass * ${node_mass}
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"bond_style harmonic" &
|
||||
"bond_coeff 1 1.0 0.333333333" &
|
||||
"create_bonds many all all 1 0.3 0.35"
|
||||
|
||||
#velocity all set 0.02 0.0 0.0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Define external forces (SHOULD COME BEFORE lb/fluid and lb/viscous FIXes)
|
||||
# to drag particles through the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
variable total_force equal 1.0 # total external force on the particle
|
||||
variable node_force equal "v_total_force / v_n_nodes"
|
||||
variable oscillateY equal cos(step*0.0005)/(-0.03+400*v_tstep)/v_n_nodes
|
||||
variable oscillateZ equal cos(step*0.0003)/(-0.03+400*v_tstep)/v_n_nodes
|
||||
fix drag all addforce ${node_force} v_oscillateY v_oscillateZ
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particle (group all here)
|
||||
# (however, this fix does not explicity apply a force back on to these
|
||||
# particles...this is accomplished through the use of the lb/viscous fix).
|
||||
# Use a fluid viscosity = 1.0, fluid density= 0.0009982071,(i.e. water) and
|
||||
# lattice spacing dx=1.2.
|
||||
# Different ".log" files in this directory show the output with the stencil
|
||||
# option being stencil 2, stencil 3, and stencil 4 (triliner, IBM, Key's).
|
||||
#----------------------------------------------------------------------------
|
||||
timestep ${tstep}
|
||||
fix FL all lb/fluid 1 1.0 0.0009982071 stencil ${stpts} dx 1.2
|
||||
#dumpxdmf 1000 fflow
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining them to move and rotate together as a single rigid
|
||||
# spherical object or an elastically bonded object
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 all lb/viscous
|
||||
|
||||
if "${n_nodes} == 1 || ${is_bonded} == 1" then &
|
||||
"fix 3 all nve" &
|
||||
else &
|
||||
"fix 3 all rigid group 1 all"
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables containing the positions/velocity of the colloids center
|
||||
# of mass.
|
||||
#----------------------------------------------------------------------------
|
||||
variable cmx equal xcm(all,x)
|
||||
variable cmy equal xcm(all,y)
|
||||
variable cmz equal xcm(all,z)
|
||||
|
||||
variable vcmx equal vcm(all,x)
|
||||
variable vcmy equal vcm(all,y)
|
||||
variable vcmz equal vcm(all,z)
|
||||
|
||||
if "${is_bonded} == 1" then &
|
||||
"variable comdatafile string drag_nb${n_nodes}_st${stpts}_dt${tstep}.out" &
|
||||
else &
|
||||
"variable comdatafile string drag_n${n_nodes}_st${stpts}_dt${tstep}.out"
|
||||
|
||||
fix printCM all print 100 "$(step) ${cmx} ${cmy} ${cmz} ${vcmx} ${vcmy} ${vcmz}" file ${comdatafile} screen no
|
||||
|
||||
run 10000
|
||||
#run 100000
|
||||
|
||||
@ -1,80 +0,0 @@
|
||||
#===========================================================================#
|
||||
# Drag force on a single sphere. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is calculated by default. The resulting equilibrium drag force #
|
||||
# should correspond to the Stokes drag force on a sphere with a slightly #
|
||||
# larger "hydrodynamic" radius, than that given by the placement of the #
|
||||
# particle nodes. #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'defaultgamma_drag.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
dimension 3
|
||||
boundary p p f
|
||||
atom_style atomic
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1
|
||||
|
||||
read_data data.one_radius16d2
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles comprising the spherical colloidal object should
|
||||
# interact with one another.
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 2.45
|
||||
pair_coeff * * 0.0 0.0 2.45
|
||||
neigh_modify exclude type 1 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need to use a large particle mass in order to approximate an infintely
|
||||
# massive particle, moving at constant velocity through the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
mass * 10000.0
|
||||
timestep 3.0
|
||||
|
||||
velocity all set 0.0 0.0001 0.0 units box
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# Use the standard LB integration scheme, a fluid density = 1.0,
|
||||
# fluid viscosity = 1.0, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation requires the surface area
|
||||
# of the composite object represented by each particle node. By default
|
||||
# this area is assumed equal to dx*dx; however, since this is not the case
|
||||
# here, it is input through the setArea keyword (i.e. particles of type 1
|
||||
# correspond to a surface area of 10.3059947).
|
||||
# Use the trilinear interpolation stencil to distribute the force from
|
||||
# a given particle onto the fluid mesh (results in a smaller hydrodynamic
|
||||
# radius than if the Peskin stencil is used).
|
||||
# Print the force and torque acting on the particle to the screen at each
|
||||
# timestep.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 1 1.0 1.0 setArea 1 10.3059947 dx 4.0 dm 10.0 trilinear calcforce 10 all
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# For this simulation the colloidal particle moves at a constant velocity
|
||||
# through the fluid. As such, we do not wish to apply the force from
|
||||
# the fluid back onto the object. Therefore, we do not use any of the
|
||||
# viscous_lb, rigid_pc_sphere, or pc fixes, and simply integrate the
|
||||
# particle motion using one of the built-in LAMMPS integrators.
|
||||
#---------------------------------------------------------------------------
|
||||
fix 2 all nve
|
||||
|
||||
run 100000
|
||||
@ -1,68 +0,0 @@
|
||||
#===========================================================================#
|
||||
# Drag force on a single sphere. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is set by the user (gamma = 13.0 for this simulation.) This #
|
||||
# type of simulation is used to calibrate the value for gamma which will #
|
||||
# give the desired Stokes drag force. #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'setgamma13d0_drag.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
dimension 3
|
||||
boundary p p f
|
||||
atom_style atomic
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1
|
||||
|
||||
read_data data.one_radius16d2
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles comprising the spherical colloidal object should
|
||||
# interact with one another.
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 2.45
|
||||
pair_coeff * * 0.0 0.0 2.45
|
||||
neigh_modify exclude type 1 1
|
||||
|
||||
mass * 1.0
|
||||
timestep 4.0
|
||||
|
||||
velocity all set 0.0 0.0001 0.0 units box
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# Use the LB integration scheme of Ollila et. al. (for stability reasons,
|
||||
# this integration scheme should be used when a large user set value for
|
||||
# gamma is specified), a fluid density = 1.0, fluid viscosity = 1.0, value
|
||||
# for gamma=13.0, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Print the force and torque acting on the particle to the screen at each
|
||||
# timestep.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 2 1.0 1.0 setGamma 13.0 dx 4.0 dm 10.0 calcforce 10 all
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# For this simulation the colloidal particle moves at a constant velocity
|
||||
# through the fluid. As such, we do not wish to apply the force from
|
||||
# the fluid back onto the object. Therefore, we do not use any of the
|
||||
# viscous_lb, rigid_pc_sphere, or pc fixes, and simply integrate the
|
||||
# particle motion using one of the built-in LAMMPS integrators.
|
||||
#---------------------------------------------------------------------------
|
||||
fix 2 all nve
|
||||
|
||||
run 100000
|
||||
75
examples/PACKAGES/latboltz/dragforce/screen.out
Normal file
75
examples/PACKAGES/latboltz/dragforce/screen.out
Normal file
@ -0,0 +1,75 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Created orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 1 atoms
|
||||
using lattice units in orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
Created 1 atoms
|
||||
using lattice units in orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
Created 1 atoms
|
||||
using lattice units in orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
Created 1 atoms
|
||||
using lattice units in orthogonal box = (-24.000000 -24.000000 -24.000000) to (24.000000 24.000000 24.000000)
|
||||
create_atoms CPU = 0.008 seconds
|
||||
Using a lattice-Boltzmann grid of 40 by 40 by 41 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
1 rigid bodies with 4 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.18
|
||||
ghost atom cutoff = 6.18
|
||||
binsize = 3.09, bins = 16 16 16
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 0.00025
|
||||
WARNING: Communication cutoff adjusted to 6.18 (../comm.cpp:739)
|
||||
Per MPI rank memory allocation (min/avg/max) = 6.763 | 6.857 | 7.138 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 2.1529156e-12
|
||||
10000 0.021008983 0 0 0.00043509092 1.4149298e-08
|
||||
Loop time of 146.77 on 4 procs for 10000 steps with 4 atoms
|
||||
|
||||
Performance: 1471.691 ns/day, 0.016 hours/ns, 68.134 timesteps/s
|
||||
99.9% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.013542 | 0.017622 | 0.022577 | 2.8 | 0.01
|
||||
Bond | 0.001794 | 0.0018995 | 0.0021441 | 0.3 | 0.00
|
||||
Neigh | 6.97e-05 | 0.00011273 | 0.0001386 | 0.0 | 0.00
|
||||
Comm | 0.10125 | 0.13954 | 0.17353 | 7.3 | 0.10
|
||||
Output | 6.19e-05 | 0.00030725 | 0.0003896 | 0.0 | 0.00
|
||||
Modify | 146.37 | 146.4 | 146.45 | 0.2 | 99.75
|
||||
Other | | 0.2122 | | | 0.14
|
||||
|
||||
Nlocal: 1.00000 ave 4 max 0 min
|
||||
Histogram: 3 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 3.00000 ave 4 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 3
|
||||
Neighs: 1.50000 ave 6 max 0 min
|
||||
Histogram: 3 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 6
|
||||
Ave neighs/atom = 1.5000000
|
||||
Ave special neighs/atom = 0.0000000
|
||||
Neighbor list builds = 9
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 25.615363
|
||||
LB update time: 62.136116
|
||||
LB PCalc time: 36.863810
|
||||
LB fluidForce time: 11.645698
|
||||
LB CorrectU time: 9.399909
|
||||
Total wall time: 0:02:26
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,84 +0,0 @@
|
||||
#===========================================================================#
|
||||
# System of 2 pairs of rigid particles moving towards one another. #
|
||||
# At each timestep, the hydrodynamic force acting on one of these four #
|
||||
# rigid particles is printed to the screen. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is calculated by default. Thus, the colloidal objects will have #
|
||||
# slightly larger "hydrodynamic" radii than given by the placement of the #
|
||||
# particle nodes. #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'fourspheres_velocity0d0001_defaultgamma.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1 exclude type 1 1
|
||||
|
||||
read_data data.four
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles interact with one another.
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 2.45
|
||||
pair_coeff * * 0.0 0.0 2.45
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need to use a large particle mass in order to approximate an infintely
|
||||
# massive particle, moving at constant velocity through the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
mass * 10000.0
|
||||
timestep 3.0
|
||||
|
||||
group sphere1 id <> 1 320
|
||||
group sphere2 id <> 321 640
|
||||
group sphere3 id <> 641 960
|
||||
group sphere4 id <> 961 1280
|
||||
|
||||
velocity sphere1 set 0.0 0.0001 0.0 units box
|
||||
velocity sphere2 set 0.0 -0.0001 0.0 units box
|
||||
velocity sphere3 set 0.0 0.0001 0.0 units box
|
||||
velocity sphere4 set 0.0 -0.0001 0.0 units box
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# Use the standard LB integration scheme, a fluid density = 1.0,
|
||||
# fluid viscosity = 1.0, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation requires the surface area
|
||||
# of the composite object represented by each particle node. By default
|
||||
# this area is assumed equal to dx*dx; however, since this is not the case
|
||||
# here, it is input through the setArea keyword (i.e. particles of type 1
|
||||
# correspond to a surface area of 2.640508625).
|
||||
# Print the force and torque acting on one of the spherical colloidal objects
|
||||
# to the screen at each timestep.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 1 1.0 1.0 setArea 1 2.640508625 dx 4.0 dm 10.0 calcforce 20 sphere1
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# For this simulation the colloidal particles move at a constant velocity
|
||||
# through the fluid. As such, we do not wish to apply the force from
|
||||
# the fluid back onto these objects. Therefore, we do not use any of the
|
||||
# viscous_lb, rigid_pc_sphere, or pc fixes, and simply integrate the
|
||||
# particle motions using one of the built-in LAMMPS integrators.
|
||||
#---------------------------------------------------------------------------
|
||||
fix 2 all nve
|
||||
|
||||
run 300000
|
||||
@ -1,76 +0,0 @@
|
||||
#===========================================================================#
|
||||
# System of 2 pairs of rigid particles moving towards one another. #
|
||||
# At each timestep, the hydrodynamic force acting on one of these four #
|
||||
# rigid particles is printed to the screen. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is set by the user (gamma = 3.303 for this simulation...this #
|
||||
# value has been calibrated a priori through simulations of the drag #
|
||||
# force acting on a single particle of the same radius). #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'fourspheres_velocity0d0001_setgamma.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1 exclude type 1 1
|
||||
|
||||
read_data data.four
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles interact with one another.
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 2.45
|
||||
pair_coeff * * 0.0 0.0 2.45
|
||||
|
||||
mass * 1.0
|
||||
timestep 4.0
|
||||
|
||||
group sphere1 id <> 1 320
|
||||
group sphere2 id <> 321 640
|
||||
group sphere3 id <> 641 960
|
||||
group sphere4 id <> 961 1280
|
||||
|
||||
velocity sphere1 set 0.0 0.0001 0.0 units box
|
||||
velocity sphere2 set 0.0 -0.0001 0.0 units box
|
||||
velocity sphere3 set 0.0 0.0001 0.0 units box
|
||||
velocity sphere4 set 0.0 -0.0001 0.0 units box
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# Use the LB integration scheme of Ollila et. al. (for stability reasons,
|
||||
# this integration scheme should be used when a large user set value for
|
||||
# gamma is specified), a fluid density = 1.0, fluid viscosity = 1.0, value
|
||||
# for gamma=3.303, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Print the force and torque acting on one of the spherical colloidal objects
|
||||
# to the screen at each timestep.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 2 1.0 1.0 setGamma 3.303 dx 4.0 dm 10.0 calcforce 20 sphere1
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# For this simulation the colloidal particles move at a constant velocity
|
||||
# through the fluid. As such, we do not wish to apply the force from
|
||||
# the fluid back onto these objects. Therefore, we do not use any of the
|
||||
# viscous_lb, rigid_pc_sphere, or pc fixes, and simply integrate the
|
||||
# particle motions using one of the built-in LAMMPS integrators.
|
||||
#---------------------------------------------------------------------------
|
||||
fix 2 all nve
|
||||
|
||||
run 300000
|
||||
@ -1,113 +0,0 @@
|
||||
#===========================================================================#
|
||||
# 2 particle microrheology test #
|
||||
# #
|
||||
# Run consists of 2 colloidal particles undergoing Brownian motion in a #
|
||||
# thermal lattice-Boltzmann fluid. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is set by the user (gamma = 1.4692 for this simulation...this #
|
||||
# value has been calibrated a priori through simulations of the drag #
|
||||
# force acting on a single particle of the same radius). #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'microrheology_setgamma.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style molecular
|
||||
read_data data.two
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The arguments for neigh_modify have been set to "delay 0 every 1", again
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid. However, these values can likely
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1
|
||||
neigh_modify exclude type 2 2
|
||||
neigh_modify exclude type 2 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# each colloidal object (use a truncated and shifted Lennard-Jones
|
||||
# potential).
|
||||
#----------------------------------------------------------------------------
|
||||
pair_style lj/cut 5.88
|
||||
pair_coeff * * 0.0 0.0 5.88
|
||||
pair_coeff 1 1 100.0 5.238484463 5.88
|
||||
pair_modify shift yes
|
||||
|
||||
mass * 0.0002398
|
||||
timestep 0.00045
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# ForceAtoms are the particles at the center of each colloidal object which
|
||||
# do not interact with the fluid, but are used to implement the hard-sphere
|
||||
# interactions.
|
||||
# FluidAtoms are the particles representing the surface of the colloidal
|
||||
# object which do interact with the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
group ForceAtoms type 1
|
||||
group FluidAtoms type 2
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles...this is accomplished through the use of the rigid_pc_sphere
|
||||
# fix).
|
||||
# Use the LB integration scheme of Ollila et. al. (for stability reasons,
|
||||
# this integration scheme should be used when a large user set value for
|
||||
# gamma is specified), a fluid viscosity = 1.0, fluid density= 0.0009982071,
|
||||
# value for gamma=1.4692, lattice spacing dx=1.2, and mass unit, dm=0.003.
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=2762). This enables the particles to undergo Brownian motion in
|
||||
# the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 1 2 1.0 0.0009982071 setGamma 1.4692 dx 1.2 dm 0.003 noise 300.0 2762
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining them to move and rotate together as a single rigid
|
||||
# spherical object.
|
||||
# Since both the ForceAtoms (central atoms), and the FluidAtoms (spherical
|
||||
# shell) should move and rotate together, this fix is applied to all of
|
||||
# the atoms in the system. However, since the central atoms should not
|
||||
# feel a force due to the fluid, they are excluded from the fluid force
|
||||
# calculation through the use of the 'innerNodes' keyword.
|
||||
# NOTE: This fix should only be used when the user specifies a value for
|
||||
# gamma (through the setGamma keyword) in the lb_fluid fix.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 all lb/rigid/pc/sphere molecule innerNodes ForceAtoms
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# To ensure that numerical errors do not lead to a buildup of momentum in the
|
||||
# system, the momentum_lb fix is used every 10000 timesteps to zero out the
|
||||
# total (particle plus fluid) momentum in the system.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 3 all lb/momentum 10000 linear 1 1 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables containing the positions of the central atoms (these
|
||||
# values should correspond to the center of mass of each composite
|
||||
# colloidal particle), and output these quantities to the screen.
|
||||
#----------------------------------------------------------------------------
|
||||
variable x1 equal x[1]
|
||||
variable y1 equal y[1]
|
||||
variable z1 equal z[1]
|
||||
variable x2 equal x[242]
|
||||
variable y2 equal y[242]
|
||||
variable z2 equal z[242]
|
||||
|
||||
thermo_style custom v_x1 v_y1 v_z1 v_x2 v_y2 v_z2
|
||||
thermo 1
|
||||
|
||||
run 2000000000
|
||||
@ -4,11 +4,6 @@
|
||||
# Run consists of 2 colloidal particles undergoing Brownian motion in a #
|
||||
# thermal lattice-Boltzmann fluid. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is calculated by default. Thus, the colloidal objects will have #
|
||||
# a slightly larger "hydrodynamic" radii than given by the placement of #
|
||||
# the particle nodes. #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'microrheology_setgamma.out' #
|
||||
#===========================================================================#
|
||||
@ -35,6 +30,8 @@ neigh_modify delay 0 every 1
|
||||
neigh_modify exclude type 2 2
|
||||
neigh_modify exclude type 2 1
|
||||
|
||||
comm_modify cutoff 2.5 # cutoff for communcation shoud be at least 2 dx
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# each colloidal object (use a truncated and shifted Lennard-Jones
|
||||
@ -62,22 +59,16 @@ group FluidAtoms type 2
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles...this is accomplished through the use of the viscous_lb fix).
|
||||
# Use the standard LB integration scheme, a fluid viscosity = 1.0, fluid
|
||||
# density= 0.0009982071, lattice spacing dx=1.2, and mass unit, dm=0.003.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation requires the surface area
|
||||
# of the composite object represented by each particle node. By default
|
||||
# this area is assumed equal to dx*dx; however, since this is not the case
|
||||
# here, it is input through the setArea keyword (i.e. particles of type 2
|
||||
# correspond to a surface area of 0.3015928947).
|
||||
# particles...this is accomplished through the use of the lb/viscous fix).
|
||||
# Use a fluid viscosity = 1.0, fluid density= 0.0009982071 (water), and a
|
||||
# lattice spacing dx=1.2.
|
||||
# Use the trilinear interpolation stencil to distribute the force from
|
||||
# a given particle onto the fluid mesh.
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=2762). This enables the particles to undergo Brownian motion in
|
||||
# the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 1 1 1.0 0.0009982071 setArea 2 0.3015928947 dx 1.2 dm 0.003 trilinear noise 300.0 2762
|
||||
fix 1 FluidAtoms lb/fluid 1 1.0 0.0009982071 dx 1.2 stencil 2 noise 300.0 2762
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force due to the fluid onto the FluidAtoms particles (again,
|
||||
@ -96,10 +87,10 @@ fix 3 all rigid molecule
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# To ensure that numerical errors do not lead to a buildup of momentum in the
|
||||
# system, the momentum_lb fix is used every 10000 timesteps to zero out the
|
||||
# system, the momentum_lb fix is used every 50000 timesteps to zero out the
|
||||
# total (particle plus fluid) momentum in the system.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 4 all lb/momentum 10000 linear 1 1 1
|
||||
fix 4 all lb/momentum 50000 linear 1 1 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables containing the positions of the central atoms (these
|
||||
@ -113,7 +104,9 @@ variable x2 equal x[242]
|
||||
variable y2 equal y[242]
|
||||
variable z2 equal z[242]
|
||||
|
||||
thermo_style custom v_x1 v_y1 v_z1 v_x2 v_y2 v_z2
|
||||
thermo 1
|
||||
fix printCM all print 100 "$(step) ${x1} ${y1} ${z1} ${x2} ${y2} ${z2}" file twocolloid.data screen no
|
||||
thermo_style custom step v_x1 v_y1 v_z1 v_x2 v_y2 v_z2
|
||||
thermo 100
|
||||
|
||||
run 2000000000
|
||||
run 2000
|
||||
#run 2000000000
|
||||
96
examples/PACKAGES/latboltz/microrheology/microrheology.out
Normal file
96
examples/PACKAGES/latboltz/microrheology/microrheology.out
Normal file
@ -0,0 +1,96 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (-48.000000 -48.000000 -48.000000) to (48.000000 48.000000 48.000000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
482 atoms
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
special bond factors lj: 0 0 0
|
||||
special bond factors coul: 0 0 0
|
||||
0 = max # of 1-2 neighbors
|
||||
0 = max # of 1-3 neighbors
|
||||
0 = max # of 1-4 neighbors
|
||||
1 = max # of special neighbors
|
||||
special bonds CPU = 0.000 seconds
|
||||
read_data CPU = 0.014 seconds
|
||||
2 atoms in group ForceAtoms
|
||||
480 atoms in group FluidAtoms
|
||||
Using a lattice-Boltzmann grid of 80 by 80 by 80 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
2 rigid bodies with 482 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 6.18
|
||||
ghost atom cutoff = 6.18
|
||||
binsize = 3.09, bins = 32 32 32
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 0.00025
|
||||
WARNING: Communication cutoff adjusted to 6.18 (../comm.cpp:739)
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.071 | 7.133 | 7.196 Mbytes
|
||||
Step v_x1 v_y1 v_z1 v_x2 v_y2 v_z2
|
||||
0 -6 -6 -6 6 6 6
|
||||
100 -5.9728258 -6.0005827 -5.9442685 5.9742978 6.0301171 5.9331116
|
||||
200 -5.9160265 -5.9832234 -5.9485519 6.0258914 6.0954103 5.8748455
|
||||
300 -5.859605 -5.9503512 -5.9827305 6.0472442 6.0610438 5.8531801
|
||||
400 -5.8495832 -5.923183 -6.0205706 6.1502952 5.9975714 5.8964144
|
||||
500 -5.8229958 -5.9256007 -5.963852 6.1738854 5.8961268 5.8723276
|
||||
600 -5.7813718 -5.9423848 -5.9309537 6.2083705 5.866578 5.9308017
|
||||
700 -5.7652512 -5.8737534 -5.9083059 6.2502919 5.757157 5.9690204
|
||||
800 -5.7586139 -5.8559089 -5.8863028 6.2708214 5.7307727 5.9443721
|
||||
900 -5.7200104 -5.8603762 -5.8944329 6.28719 5.7723113 5.9660136
|
||||
1000 -5.7224239 -5.8487095 -5.9013071 6.3156272 5.8026721 5.9558441
|
||||
1100 -5.576187 -5.8604571 -5.9254376 6.3778561 5.7655467 5.9702619
|
||||
1200 -5.5348377 -5.8086817 -5.9982829 6.3979309 5.8028207 5.930579
|
||||
1300 -5.5937473 -5.7733457 -6.0596682 6.3630776 5.937045 5.9662317
|
||||
1400 -5.6207137 -5.7027974 -6.0641922 6.3079248 5.9631009 5.9707377
|
||||
1500 -5.6648138 -5.6229854 -6.0989624 6.2784552 5.9448163 5.9254903
|
||||
1600 -5.6905161 -5.5479418 -6.0704567 6.3133179 5.941372 5.8933924
|
||||
1700 -5.6878847 -5.5415566 -6.0222328 6.3633902 5.9957476 5.7994115
|
||||
1800 -5.6500526 -5.5204331 -5.9767389 6.4081067 5.9651289 5.7297962
|
||||
1900 -5.7221835 -5.4972898 -5.9670446 6.4470403 5.9161644 5.6902098
|
||||
2000 -5.7427378 -5.4637388 -6.0196569 6.3668465 5.9127502 5.6931183
|
||||
Loop time of 337.139 on 4 procs for 2000 steps with 482 atoms
|
||||
|
||||
Performance: 128.137 ns/day, 0.187 hours/ns, 5.932 timesteps/s
|
||||
100.0% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.0025147 | 0.0050251 | 0.0075003 | 3.5 | 0.00
|
||||
Bond | 0.0004674 | 0.00047853 | 0.0004909 | 0.0 | 0.00
|
||||
Neigh | 0.0005738 | 0.0036401 | 0.0068179 | 5.0 | 0.00
|
||||
Comm | 0.056088 | 0.063835 | 0.071507 | 2.3 | 0.02
|
||||
Output | 0.0026851 | 0.0074911 | 0.0090938 | 3.2 | 0.00
|
||||
Modify | 336.86 | 336.88 | 336.9 | 0.1 | 99.92
|
||||
Other | | 0.1791 | | | 0.05
|
||||
|
||||
Nlocal: 120.500 ave 241 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 181.000 ave 297 max 80 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Ave special neighs/atom = 0.0000000
|
||||
Neighbor list builds = 20
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 185.672949
|
||||
LB update time: 78.463559
|
||||
LB PCalc time: 43.293723
|
||||
LB fluidForce time: 16.211223
|
||||
LB CorrectU time: 13.017318
|
||||
Total wall time: 0:05:37
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
22
examples/PACKAGES/latboltz/microrheology/twocolloid.data
Normal file
22
examples/PACKAGES/latboltz/microrheology/twocolloid.data
Normal file
@ -0,0 +1,22 @@
|
||||
# Fix print output for fix printCM
|
||||
0 -6 -6 -6 6 6 6
|
||||
100 -5.9728258390363 -6.00058270846511 -5.94426846143197 5.97429784670672 6.03011708896542 5.93311158594508
|
||||
200 -5.91602646162167 -5.9832233858717 -5.94855193796953 6.02589142858035 6.09541031873856 5.87484550008362
|
||||
300 -5.85960503513375 -5.95035117058311 -5.98273054879889 6.04724424485127 6.06104384188688 5.85318010531015
|
||||
400 -5.84958318427899 -5.92318300778995 -6.0205706276695 6.15029520354417 5.99757137700149 5.8964143570282
|
||||
500 -5.8229957990533 -5.92560068752847 -5.96385200914485 6.17388543466333 5.89612680507036 5.87232755414486
|
||||
600 -5.78137178827873 -5.94238476653933 -5.93095367414376 6.20837053568049 5.86657804207129 5.93080172251295
|
||||
700 -5.76525119778907 -5.87375336226389 -5.9083058512149 6.25029186802515 5.75715699239055 5.9690203907764
|
||||
800 -5.75861389468995 -5.85590887490732 -5.88630276459582 6.2708213544238 5.73077273842208 5.94437207297023
|
||||
900 -5.72001041550187 -5.86037621773229 -5.89443290411243 6.28718998830012 5.77231130470684 5.96601364415703
|
||||
1000 -5.72242391722508 -5.84870945302511 -5.90130708799915 6.31562723862135 5.802672067251 5.95584407951942
|
||||
1100 -5.57618701057034 -5.8604571230511 -5.92543761678951 6.37785612529918 5.7655466995849 5.97026185233192
|
||||
1200 -5.53483774079645 -5.80868168559119 -5.9982829389625 6.39793085074462 5.80282069928233 5.93057895371063
|
||||
1300 -5.59374730222166 -5.77334569741735 -6.05966819406177 6.36307756870586 5.93704500047883 5.9662317452964
|
||||
1400 -5.62071369379104 -5.70279744043298 -6.06419223778362 6.30792475952201 5.96310087566106 5.97073771117513
|
||||
1500 -5.66481383664855 -5.62298536173757 -6.0989623809087 6.2784552368717 5.94481631143006 5.92549033887773
|
||||
1600 -5.69051607540066 -5.54794180980933 -6.07045673682844 6.31331787941986 5.94137200838204 5.89339244198547
|
||||
1700 -5.68788472257104 -5.54155660268121 -6.0222328152897 6.36339021564644 5.9957476424637 5.79941151400367
|
||||
1800 -5.65005256416692 -5.52043305892636 -5.97673894263548 6.4081066664191 5.96512894011256 5.72979619115097
|
||||
1900 -5.72218349101654 -5.49728980937974 -5.96704455955022 6.44704025453208 5.91616438703042 5.69020975592141
|
||||
2000 -5.74273781133623 -5.46373877287724 -6.0196569280068 6.36684647495879 5.91275021020995 5.6931183094732
|
||||
307
examples/PACKAGES/latboltz/pit_geometry/dumpatoms0.vtp
Normal file
307
examples/PACKAGES/latboltz/pit_geometry/dumpatoms0.vtp
Normal file
@ -0,0 +1,307 @@
|
||||
<?xml version="1.0"?>
|
||||
<VTKFile type="PolyData" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor">
|
||||
<PolyData>
|
||||
<Piece NumberOfPoints="320" NumberOfVerts="320" NumberOfLines="0" NumberOfStrips="0" NumberOfPolys="0">
|
||||
<PointData>
|
||||
</PointData>
|
||||
<CellData>
|
||||
</CellData>
|
||||
<Points>
|
||||
<DataArray type="Float32" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="16.199999853" RangeMax="16.20000143">
|
||||
-1.2765063047 -1.9475830793 -16.031764984 -2.0996208191 0.56559312344 -16.053401947
|
||||
-1.4108068943 -6.399541378 -14.81538105 -5.4746732712 -3.4608016014 -14.84893322
|
||||
-2.7810842991 -4.0221128464 -15.444357872 -6.384250164 -0.6784542799 -14.873502731
|
||||
-4.541870594 1.3574925661 -15.490921974 -4.8472628593 4.0945124626 -14.90567112
|
||||
-2.4847655296 5.8199253082 -14.912895203 -1.4070286751 -10.581619263 -12.185631752
|
||||
-5.7308607101 -8.0696210861 -12.82491684 -2.8877182007 -8.4872970581 -13.493216515
|
||||
-9.477098465 -4.7464299202 -12.251369476 -7.0096340179 -5.5070414543 -13.526919365
|
||||
-10.380968094 -1.9634655714 -12.280893326 -8.8358278275 0.085998803377 -13.577952385
|
||||
-9.3248462677 2.9175746441 -12.921881676 -7.2786045074 4.9240102768 -13.60941124
|
||||
-7.3324933052 7.5061802864 -12.342278481 -4.9701147079 9.2321519852 -12.349306107
|
||||
-2.5306081772 8.3921394348 -13.623804092 -7.0057001114 -9.814116478 -10.818655014
|
||||
-11.396950722 3.597079277 -10.93666172 -9.3904590607 8.0141105652 -10.489678383
|
||||
-4.8212370872 11.352190018 -10.503498077 -0.0043347999454 11.91958046 -10.971035004
|
||||
-1.2654399872 -13.606822014 -8.7001771927 -5.467110157 -11.890191078 -9.5485124588
|
||||
-2.7736129761 -12.180387497 -10.314322472 -9.4733295441 -8.9973182678 -9.5783262253
|
||||
-10.607534409 -6.5246086121 -10.360971451 -12.439334869 -5.5324416161 -8.780380249
|
||||
-13.246848106 -3.0623204708 -8.8081350327 -12.343792915 -1.1616621017 -10.426952362
|
||||
-12.907871246 1.4962507486 -9.6740942001 -11.393556595 6.1977648735 -9.7064199448
|
||||
-9.0286827087 10.080042839 -8.9059333801 -6.8939232826 11.639901161 -8.9121570587
|
||||
-2.4787797928 12.710310936 -9.7336359024 -6.3729510307 -13.118784904 -7.0514550209
|
||||
-10.373739243 -10.230628967 -7.0823588371 -14.379320145 1.9869662523 -7.1921582222
|
||||
-12.864855766 6.6884727478 -7.224946022 -2.4895606041 14.268239975 -7.2566828728
|
||||
-4.5272636414 -14.55527401 -5.4852452278 -2.0842666626 -14.716341019 -6.4440031052
|
||||
-8.8249349594 -12.28531456 -5.7992768288 -12.337191582 -8.9093980789 -5.554848671
|
||||
-13.243919373 -6.6281695366 -6.5655155182 -14.578849792 -2.5898859501 -6.5718832016
|
||||
-15.190401077 -0.20785799623 -5.6257033348 -14.354553223 4.5826940536 -5.9485912323
|
||||
-12.235861778 8.9632558823 -5.6906723976 -10.357878685 10.523566246 -6.6640028954
|
||||
-9.0441036224 12.357603073 -5.2852487564 -6.9034519196 13.04728508 -6.6746330261
|
||||
-4.8418898582 14.364931107 -5.7135691643 -0.025792099535 15.05074501 -5.9928665161
|
||||
-14.576830864 -4.8181967735 -5.1711702347 -4.8299303055 -15.213953018 -2.7653977871
|
||||
-9.3111581802 -12.921244621 -2.9637489319 -12.898698807 -9.3829698563 -2.8325741291
|
||||
-15.186351776 -4.9986181259 -2.6131546497 -15.935868263 -0.11478249729 -2.9111750126
|
||||
-15.137533188 4.8548550606 -3.1185719967 -12.883467674 9.3583030701 -2.9796741009
|
||||
-9.4243211746 12.888746262 -2.7390565872 -5.0105237961 15.109945297 -3.0040335655
|
||||
-0.035328999162 15.887658119 -3.1656131744 -2.4662206173 -15.965166092 -1.2129514217
|
||||
-7.2614321709 -14.40791893 -1.4572211504 -11.384169579 -11.429214478 -1.4878737926
|
||||
-14.371459961 -7.3603858948 -1.313731432 -15.93384552 -2.5926969051 -1.3529638052
|
||||
-15.932616234 2.4504106045 -1.6084948778 -14.373174667 7.2904653549 -1.6434713602
|
||||
-11.429623604 11.388196945 -1.4535102844 -7.3801183701 14.346599579 -1.4659335613
|
||||
-2.5822043419 15.904375076 -1.6802124977 -2.5113227367 -15.917257309 1.6655920744
|
||||
-7.3132719994 -14.385638237 1.4175691605 -11.378144264 -11.447407722 1.3909399509
|
||||
-14.344667435 -7.3635115623 1.5650080442 -15.928640366 -2.5292665958 1.5235636234
|
||||
-15.953428268 2.5139064789 1.268235445 -14.415662766 7.2873840332 1.2339941263
|
||||
-11.45128727 11.370144844 1.4240243435 -7.3445792198 14.370298386 1.4112753868
|
||||
-2.5546579361 15.952458382 1.197000742 -4.953040123 -15.134414673 2.9760537148
|
||||
-9.368683815 -12.939592361 2.6897485256 -12.85098362 -9.4247226715 2.9097831249
|
||||
-15.129688263 -4.9307146072 3.036544323 -15.95143795 0.036571200937 2.8267147541
|
||||
-15.225101471 4.9229331017 2.5300252438 -12.961856842 9.3171863556 2.760491848
|
||||
-9.394990921 12.872663498 2.9101018906 -4.9242544174 15.189171791 2.7351071835
|
||||
-0.050486098975 16.008607864 2.4823305607 -14.62994194 4.7489209175 5.0845413208
|
||||
-0.055637199432 15.396231651 5.0391440392 -6.8851099014 -13.07201004 6.6451363564
|
||||
-4.8240132332 -14.375985146 5.7008738518 -8.9848814011 -12.410024643 5.2633852959
|
||||
-10.333859444 -10.578429222 6.6142435074 -12.220370293 -9.0253534317 5.6254396439
|
||||
-14.363765717 -4.6537885666 5.8706488609 -15.221281052 0.1321644038 5.5439305305
|
||||
-14.628103256 2.5109028816 6.4926109314 -13.316293716 6.5828309059 6.463953495
|
||||
-12.413440704 8.8484430313 5.4819316864 -8.9221496582 12.237895966 5.7505803108
|
||||
-4.6331090927 14.53248024 5.4572291374 -2.1964383125 14.706703186 6.428730011
|
||||
-2.4554483891 -14.278398514 7.248319149 -12.870843887 -6.7512125969 7.1555938721
|
||||
-14.40810585 -2.0585300922 7.1139969826 -10.467813492 10.172929764 7.0268349648
|
||||
-6.4796338081 13.086415291 7.0142793655 -1.3821860552 13.602688789 8.6888685226
|
||||
-6.8897824287 -11.691495895 8.8475894928 -2.4559373856 -12.720425606 9.7262096405
|
||||
-9.0251560211 -10.129585266 8.8531389236 -11.415016174 -6.2521080971 9.6461687088
|
||||
-12.952742577 -1.559371233 9.6038970947 -12.406881332 1.0975415707 10.358799934
|
||||
-13.313152313 2.9623024464 8.7421255112 -12.502416611 5.4787797928 8.7242517471
|
||||
-10.671444893 6.4846076965 10.320375443 -9.5670814514 8.9506664276 9.5287227631
|
||||
-5.5788354874 11.864228249 9.51612854 -2.8905851841 12.16905117 10.295568466
|
||||
-4.8165626526 -11.378798485 10.476817131 -9.405880928 -8.0601673126 10.44045639
|
||||
-11.438404083 -3.6504526138 10.875528336 -7.1116480827 9.7814483643 10.779042244
|
||||
-0.0065538999625 -9.7285356522 12.953593254 -4.9864192009 -9.2555627823 12.325185776
|
||||
-2.5565800667 -8.4010105133 13.613483429 -7.3593440056 -7.5415086746 12.304703712
|
||||
-7.3262019157 -4.956744194 13.571937561 -9.3806400299 -2.9591486454 12.871949196
|
||||
-8.9109096527 -0.12282379717 13.528512001 -10.460621834 1.9195418358 12.220097542
|
||||
-9.563293457 4.7054433823 12.200092316 -7.1076846123 5.4763588905 13.488155365
|
||||
-5.8366131783 8.0449895859 12.792658806 -3.0004475117 8.4771928787 13.474960327
|
||||
-1.524838686 10.578149796 12.174466133 -2.5322492123 -5.8277373314 14.901852608
|
||||
-0.028949100524 -4.6890597343 15.506511688 -4.9050216675 -4.1139712334 14.881398201
|
||||
-4.6173567772 -1.3747745752 15.46706295 -6.4679889679 0.65244358778 14.838445663
|
||||
-5.5708231926 3.4384815693 14.818325996 -2.8827397823 4.0131869316 15.428031921
|
||||
-1.5206182003 6.3976550102 14.805328369 -0.037310101092 -2.1192278862 16.060743332
|
||||
-2.1807894707 -0.57039308548 16.04240799 -1.3705233335 1.9464428425 16.024139404
|
||||
1.3676694632 -1.9404488802 -16.025110245 2.1784589291 0.57639241219 -16.042509079
|
||||
0.035672198981 2.1248726845 -16.060001373 1.5164097548 -6.3920898438 -14.808163643
|
||||
2.8791663647 -4.0073695183 -15.430211067 5.5677866936 -3.4329507351 -14.820750237
|
||||
6.4650411606 -0.64669770002 -14.839981079 4.6146154404 1.3805888891 -15.467363358
|
||||
4.9021787643 4.1194791794 -14.880811691 0.027309199795 4.6952199936 -15.504650116
|
||||
2.530069828 5.8332099915 -14.900081635 1.5203715563 -10.574667931 -12.178050041
|
||||
2.9965384007 -8.4728097916 -13.478586197 5.8339495659 -8.0410366058 -12.796358109
|
||||
7.1052179337 -5.4715075493 -13.491423607 9.5616722107 -4.7006006241 -12.203228951
|
||||
10.458585739 -1.9140156507 -12.222706795 8.9081039429 0.12860539556 -13.530305862
|
||||
9.3775053024 2.9650833607 -12.872866631 7.3230290413 4.9619059563 -13.571763039
|
||||
7.3559703827 7.5456008911 -12.304211617 2.5549035072 8.4059829712 -13.610729218
|
||||
4.9835157394 9.2589836121 -12.32379055 0.006680500228 9.7337503433 -12.94967556
|
||||
7.1099309921 -9.7788267136 -10.782553673 11.434930801 3.6572751999 -10.876889229
|
||||
9.4016685486 8.0649147034 -10.440585136 4.8135123253 11.378481865 -10.478563309
|
||||
2.8872973919 -12.166971207 -10.298949242 5.5765805244 -11.862739563 -9.5193052292
|
||||
9.566534996 -8.9478826523 -9.5318851471 10.67075634 -6.4808635712 -10.323438644
|
||||
12.502109528 -5.4745378494 -8.7273550034 13.31219101 -2.9570639133 -8.7453632355
|
||||
12.40506649 -1.0916596651 -10.361593246 12.950211525 1.5658111572 -9.6062631607
|
||||
11.410634995 6.2591509819 -9.6467847824 9.0197696686 10.129683495 -8.8585157394
|
||||
2.4595386982 12.723855972 -9.7208108902 6.8765144348 11.677452087 -8.876411438
|
||||
1.3788765669 -13.60086441 -8.6922502518 6.4781627655 -13.085989952 -7.0164308548
|
||||
10.468094826 -10.171052933 -7.0291318893 14.405905724 2.0649981499 -7.1165781021
|
||||
12.866221428 6.7582130432 -7.1572990417 2.4488604069 14.281755447 -7.2439341545
|
||||
2.1937994957 -14.705879211 -6.4315156937 4.6305780411 -14.532443047 -5.4594764709
|
||||
8.9220666885 -12.237405777 -5.7517514229 12.414212227 -8.8458738327 -5.4843301773
|
||||
13.316508293 -6.579662323 -6.4667363167 14.627398491 -2.5058937073 -6.4961333275
|
||||
15.220294952 -0.12586179376 -5.5467820168 14.360603333 4.6603555679 -5.873175621
|
||||
12.216605186 9.0298118591 -5.6264629364 10.335007668 10.580288887 -6.6094717979
|
||||
9.0036993027 12.407296181 -5.2375979424 4.7926158905 14.391480446 -5.6882457733
|
||||
6.8662714958 13.085309982 -6.6384482384 0.052441999316 -15.395400047 -5.0417203903
|
||||
14.630375862 -4.7441678047 -5.0877304077 0.045084599406 -16.008256912 -2.4846892357
|
||||
4.9205584526 -15.190060616 -2.7368211746 9.3951883316 -12.872781754 -2.9089438915
|
||||
12.963675499 -9.3139591217 -2.7628438473 15.226666451 -4.9164662361 -2.5331830978
|
||||
15.9510355 -0.029823200777 -2.8290650845 15.127200127 4.9368042946 -3.0390481949
|
||||
12.847594261 9.4286670685 -2.9119718075 9.3679618835 12.940156937 -2.6895465851
|
||||
4.9429821968 15.137335777 -2.9779224396 2.5481336117 -15.953335762 -1.1992195845
|
||||
7.3427634239 -14.37126255 -1.4109097719 11.452789307 -11.368597031 -1.4243042469
|
||||
14.418450356 -7.281270504 -1.2375049591 15.954364777 -2.5065879822 -1.270938158
|
||||
15.927419662 2.5359044075 -1.5252948999 14.341698647 7.3687181473 -1.5677063465
|
||||
11.374606133 11.450634003 -1.3933180571 7.3087468147 14.386968613 -1.4273703098
|
||||
2.5033860207 15.918376923 -1.6668385267 2.5722630024 -15.906219482 1.6779994965
|
||||
7.3764066696 -14.348107338 1.4698483944 11.432778358 -11.384653091 1.4564572573
|
||||
14.378007889 -7.2818632126 1.6393238306 15.934093475 -2.4420318604 1.6066032648
|
||||
15.932682037 2.600233078 1.3521995544 14.369052887 7.3657083511 1.3102219105
|
||||
11.381079674 11.432725906 1.4845290184 7.2578787804 14.410453796 1.4498420954
|
||||
2.4603865147 15.9662714 1.2102479935 0.025679599494 -15.887604713 3.1659731865
|
||||
5.0013809204 -15.113598824 3.0008919239 9.4216985703 -12.883896828 2.7707076073
|
||||
12.890396118 -9.3502149582 2.9750983715 15.140637398 -4.8466739655 3.1162295341
|
||||
15.935914993 0.12316860259 2.9105799198 15.184583664 5.0052967072 2.6106390953
|
||||
12.89591217 9.3878927231 2.8289477825 9.308588028 12.924035072 2.9596500397
|
||||
4.8259420395 15.216022491 2.7609708309 14.576432228 4.8284044266 5.1627664566
|
||||
0.019359499216 -15.050198555 5.994260788 4.8441348076 -14.364821434 5.7119417191
|
||||
6.935901165 -13.034653664 6.6656665802 9.0417299271 -12.351647377 5.3032026291
|
||||
10.338202477 -10.548746109 6.6547384262 12.236753464 -8.9637470245 5.6879825592
|
||||
14.35724926 -4.5759515762 5.9472751617 15.19068718 0.21455389261 5.6246800423
|
||||
14.579385757 2.5897758007 6.5707378387 13.245624542 6.6552696228 6.5345873833
|
||||
12.335611343 8.9161109924 5.54758358 8.8242149353 12.286525726 5.7978043556
|
||||
2.0820360184 14.718330383 6.4401779175 4.5242114067 14.557642937 5.4814743996
|
||||
2.4878885746 -14.267701149 7.2583141327 12.867420197 -6.6841239929 7.224404335
|
||||
14.380796432 -1.9808592796 7.1908903122 10.374479294 10.229851723 7.0823974609
|
||||
6.3704752922 13.121611595 7.0484304428 2.4800579548 -12.707892418 9.7364673615
|
||||
6.900513649 -11.636092186 8.9120311737 9.0260982513 -10.083473206 8.9046697617
|
||||
11.395665169 -6.1931433678 9.7068958282 12.909237862 -1.4901082516 9.6732196808
|
||||
12.345027924 1.1640406847 10.425225258 13.250017166 3.0334672928 8.8133497238
|
||||
12.425982475 5.5462265015 8.7905836105 10.580823898 6.5422868729 10.377122879
|
||||
9.4670152664 9.0025348663 9.5796670914 2.76902771 12.184300423 10.310932159
|
||||
5.4627952576 11.894509315 9.5456027985 1.2620329857 13.609647751 8.6962509155
|
||||
0.0067480001599 -11.915325165 10.975655556 4.8222913742 -11.348595619 10.506897926
|
||||
9.3917617798 -8.0099372864 10.491698265 11.399089813 -3.5900514126 10.936740875
|
||||
7.0002636909 9.8199796677 10.816854477 2.5299584866 -8.3862628937 13.627542496
|
||||
4.9695887566 -9.2262535095 12.353924751 7.333085537 -7.4994969368 12.345988274
|
||||
7.2796368599 -4.9160265923 13.611744881 9.3270139694 -2.908613205 12.922337532
|
||||
8.8386497498 -0.074789896607 13.576181412 10.384375572 1.9758294821 12.276028633
|
||||
7.0053162575 5.5146622658 13.526051521 9.472155571 4.7569513321 12.251111031
|
||||
2.8816845417 8.4931564331 13.490819931 5.723906517 8.0763835907 12.823764801
|
||||
1.4017330408 10.586135864 12.182318687 2.4839866161 -5.8135495186 14.915511131
|
||||
4.8472824097 -4.0868468285 14.90776825 4.5417075157 -1.3494888544 15.491668701
|
||||
6.3845019341 0.68733662367 14.872986794 2.7777659893 4.0285019875 15.443289757
|
||||
5.4723072052 3.4683527946 14.848043442 1.4060490131 6.4055986404 14.813215256
|
||||
2.0980482101 -0.55901569128 16.05383873 1.2735446692 1.9534711838 16.031284332
|
||||
</DataArray>
|
||||
</Points>
|
||||
<Verts>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
0 1 2 3 4 5
|
||||
6 7 8 9 10 11
|
||||
12 13 14 15 16 17
|
||||
18 19 20 21 22 23
|
||||
24 25 26 27 28 29
|
||||
30 31 32 33 34 35
|
||||
36 37 38 39 40 41
|
||||
42 43 44 45 46 47
|
||||
48 49 50 51 52 53
|
||||
54 55 56 57 58 59
|
||||
60 61 62 63 64 65
|
||||
66 67 68 69 70 71
|
||||
72 73 74 75 76 77
|
||||
78 79 80 81 82 83
|
||||
84 85 86 87 88 89
|
||||
90 91 92 93 94 95
|
||||
96 97 98 99 100 101
|
||||
102 103 104 105 106 107
|
||||
108 109 110 111 112 113
|
||||
114 115 116 117 118 119
|
||||
120 121 122 123 124 125
|
||||
126 127 128 129 130 131
|
||||
132 133 134 135 136 137
|
||||
138 139 140 141 142 143
|
||||
144 145 146 147 148 149
|
||||
150 151 152 153 154 155
|
||||
156 157 158 159 160 161
|
||||
162 163 164 165 166 167
|
||||
168 169 170 171 172 173
|
||||
174 175 176 177 178 179
|
||||
180 181 182 183 184 185
|
||||
186 187 188 189 190 191
|
||||
192 193 194 195 196 197
|
||||
198 199 200 201 202 203
|
||||
204 205 206 207 208 209
|
||||
210 211 212 213 214 215
|
||||
216 217 218 219 220 221
|
||||
222 223 224 225 226 227
|
||||
228 229 230 231 232 233
|
||||
234 235 236 237 238 239
|
||||
240 241 242 243 244 245
|
||||
246 247 248 249 250 251
|
||||
252 253 254 255 256 257
|
||||
258 259 260 261 262 263
|
||||
264 265 266 267 268 269
|
||||
270 271 272 273 274 275
|
||||
276 277 278 279 280 281
|
||||
282 283 284 285 286 287
|
||||
288 289 290 291 292 293
|
||||
294 295 296 297 298 299
|
||||
300 301 302 303 304 305
|
||||
306 307 308 309 310 311
|
||||
312 313 314 315 316 317
|
||||
318 319
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
1 2 3 4 5 6
|
||||
7 8 9 10 11 12
|
||||
13 14 15 16 17 18
|
||||
19 20 21 22 23 24
|
||||
25 26 27 28 29 30
|
||||
31 32 33 34 35 36
|
||||
37 38 39 40 41 42
|
||||
43 44 45 46 47 48
|
||||
49 50 51 52 53 54
|
||||
55 56 57 58 59 60
|
||||
61 62 63 64 65 66
|
||||
67 68 69 70 71 72
|
||||
73 74 75 76 77 78
|
||||
79 80 81 82 83 84
|
||||
85 86 87 88 89 90
|
||||
91 92 93 94 95 96
|
||||
97 98 99 100 101 102
|
||||
103 104 105 106 107 108
|
||||
109 110 111 112 113 114
|
||||
115 116 117 118 119 120
|
||||
121 122 123 124 125 126
|
||||
127 128 129 130 131 132
|
||||
133 134 135 136 137 138
|
||||
139 140 141 142 143 144
|
||||
145 146 147 148 149 150
|
||||
151 152 153 154 155 156
|
||||
157 158 159 160 161 162
|
||||
163 164 165 166 167 168
|
||||
169 170 171 172 173 174
|
||||
175 176 177 178 179 180
|
||||
181 182 183 184 185 186
|
||||
187 188 189 190 191 192
|
||||
193 194 195 196 197 198
|
||||
199 200 201 202 203 204
|
||||
205 206 207 208 209 210
|
||||
211 212 213 214 215 216
|
||||
217 218 219 220 221 222
|
||||
223 224 225 226 227 228
|
||||
229 230 231 232 233 234
|
||||
235 236 237 238 239 240
|
||||
241 242 243 244 245 246
|
||||
247 248 249 250 251 252
|
||||
253 254 255 256 257 258
|
||||
259 260 261 262 263 264
|
||||
265 266 267 268 269 270
|
||||
271 272 273 274 275 276
|
||||
277 278 279 280 281 282
|
||||
283 284 285 286 287 288
|
||||
289 290 291 292 293 294
|
||||
295 296 297 298 299 300
|
||||
301 302 303 304 305 306
|
||||
307 308 309 310 311 312
|
||||
313 314 315 316 317 318
|
||||
319 320
|
||||
</DataArray>
|
||||
</Verts>
|
||||
<Lines>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Lines>
|
||||
<Strips>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Strips>
|
||||
<Polys>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Polys>
|
||||
</Piece>
|
||||
</PolyData>
|
||||
</VTKFile>
|
||||
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0"?>
|
||||
<VTKFile type="RectilinearGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor">
|
||||
<RectilinearGrid WholeExtent="0 1 0 1 0 1">
|
||||
<Piece Extent="0 1 0 1 0 1">
|
||||
<PointData>
|
||||
</PointData>
|
||||
<CellData>
|
||||
</CellData>
|
||||
<Coordinates>
|
||||
<DataArray type="Float64" Name="Array 0x555d54831ad0" format="ascii" RangeMin="-120" RangeMax="120">
|
||||
-120 120
|
||||
</DataArray>
|
||||
<DataArray type="Float64" Name="Array 0x555d54831c40" format="ascii" RangeMin="-100" RangeMax="100">
|
||||
-100 100
|
||||
</DataArray>
|
||||
<DataArray type="Float64" Name="Array 0x555d54831db0" format="ascii" RangeMin="-120" RangeMax="120">
|
||||
-120 120
|
||||
</DataArray>
|
||||
</Coordinates>
|
||||
</Piece>
|
||||
</RectilinearGrid>
|
||||
</VTKFile>
|
||||
307
examples/PACKAGES/latboltz/pit_geometry/dumpatoms2500.vtp
Normal file
307
examples/PACKAGES/latboltz/pit_geometry/dumpatoms2500.vtp
Normal file
@ -0,0 +1,307 @@
|
||||
<?xml version="1.0"?>
|
||||
<VTKFile type="PolyData" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor">
|
||||
<PolyData>
|
||||
<Piece NumberOfPoints="320" NumberOfVerts="320" NumberOfLines="0" NumberOfStrips="0" NumberOfPolys="0">
|
||||
<PointData>
|
||||
</PointData>
|
||||
<CellData>
|
||||
</CellData>
|
||||
<Points>
|
||||
<DataArray type="Float32" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="68.047969796" RangeMax="100.18161396">
|
||||
79.127319336 -6.3498387337 -8.2224750519 84.755836487 -5.4169206619 -9.3474168777
|
||||
80.102745056 -3.9640805721 -9.3572177887 82.800186157 -3.3837780952 -9.9203701019
|
||||
76.067718506 -1.9126911163 -8.180560112 78.475700378 -1.9010015726 -9.2729158401
|
||||
88.324577332 -1.8510421515 -9.5905427933 75.303894043 0.59901714325 -7.861281395
|
||||
79.199890137 0.61718690395 -9.6285161972 83.601615906 -0.59603399038 -10.313872337
|
||||
86.366065979 0.18618755043 -10.138315201 77.239707947 2.1619446278 -8.7561321259
|
||||
81.652862549 1.426761508 -10.118278503 82.151451111 4.1673560143 -9.7074155807
|
||||
87.059265137 3.0248293877 -9.7386217117 77.456558228 4.7334241867 -8.2505216599
|
||||
79.981529236 5.8769664764 -8.7415819168 84.895278931 5.0166621208 -9.5232810974
|
||||
81.031051636 -8.425242424 -7.6254396439 83.894416809 -7.987177372 -8.1840410233
|
||||
76.461639404 -6.3623328209 -7.0130543709 89.317611694 -6.4135570526 -7.9456510544
|
||||
87.5235672 -4.6391172409 -9.1969575882 74.948143005 -3.9885752201 -7.0187802315
|
||||
90.866271973 -1.0214734077 -8.7071523666 73.314071655 1.3878893852 -6.336042881
|
||||
91.669471741 1.6384958029 -8.2496652603 73.272743225 4.1255927086 -5.680044651
|
||||
89.758224487 3.7247056961 -8.7784862518 75.41456604 5.8550415039 -6.6700406075
|
||||
85.445510864 7.6030416489 -8.3870010376 80.533477783 8.4524555206 -7.582089901
|
||||
83.275154114 9.3123016357 -7.4213047028 77.567626953 -10.538916588 -4.6175765991
|
||||
80.233627319 -10.526921272 -5.8267407417 85.895843506 -9.7185792923 -6.8802084923
|
||||
75.672485352 -8.4498662949 -5.1943893433 88.647972107 -8.8808174133 -6.7640171051
|
||||
71.901809692 -5.4767713547 -3.5163016319 91.644042969 -5.40076828 -7.2557320595
|
||||
72.743934631 -3.4306535721 -5.3588953018 92.367332458 -2.8819499016 -7.6115927696
|
||||
71.899589539 -0.64992976189 -5.0066838264 71.597564697 4.9536085129 -3.4919087887
|
||||
90.24079895 6.3290901184 -7.6525144577 75.902114868 8.4298496246 -5.4814271927
|
||||
88.079238892 8.1297445297 -7.5421805382 78.48690033 9.7772169113 -5.9237957001
|
||||
83.881874084 11.435339928 -5.674697876 82.261474609 -12.112961769 -4.6833906174
|
||||
85.03086853 -11.802490234 -5.0916953087 90.510673523 -10.097226143 -4.860490799
|
||||
73.362861633 -8.0356845856 -3.4059195518 93.326599121 -6.4997859001 -5.5363922119
|
||||
94.496932983 -2.4238419533 -6.1124854088 70.205871582 0.11300560832 -2.8107111454
|
||||
95.424835205 -0.04082499072 -5.4980196953 94.026626587 2.1453616619 -6.5902466774
|
||||
70.026702881 2.9450964928 -2.014124155 94.495628357 4.7432188988 -5.443444252
|
||||
72.068649292 7.5383133888 -2.3199384212 92.597770691 6.8358302116 -5.9932317734
|
||||
74.210441589 9.268321991 -3.3097074032 88.384033203 10.197141647 -5.9468660355
|
||||
79.293502808 11.967137337 -4.1219549179 82.052124023 12.778244019 -4.0091562271
|
||||
86.42326355 11.741186142 -5.0746541023 79.151618958 -13.556612968 -1.5023292303
|
||||
81.560264587 -13.546096802 -2.5935840607 89.868019104 12.482253075 -2.6491575241
|
||||
77.105751038 -12.136133194 -2.3457956314 86.893638611 -13.018979073 -3.1880676746
|
||||
89.63999176 -12.16356945 -3.0538766384 73.040855408 -9.7781887054 -1.0493210554
|
||||
92.919425964 -8.7654953003 -4.26527071 70.185333252 -4.7177467346 -1.331917882
|
||||
95.090118408 -4.6591720581 -4.8299484253 69.34412384 -1.9364062548 -0.98658514023
|
||||
92.637252808 9.1094903946 -4.3335533142 90.513580322 10.65468502 -4.4479398727
|
||||
75.107467651 11.392448425 -1.6950380802 77.554756165 12.756189346 -1.9694106579
|
||||
83.067520142 14.341272354 -1.7535002232 87.340179443 13.153678894 -3.0363264084
|
||||
97.21824646 0.062123380601 -3.3295507431 96.36958313 5.0268807411 -3.1841919422
|
||||
96.694107056 -4.8251299858 -2.7537374496 94.337860107 9.5150766373 -2.1269392967
|
||||
94.550880432 -9.2269716263 -2.0174045563 97.732124329 2.6305139065 -2.1368095875
|
||||
85.845451355 14.458260536 -1.3121234179 74.973068237 -11.848970413 -0.53064090014
|
||||
97.874534607 -2.4113845825 -1.9106841087 83.243331909 -14.645004272 -0.87435674667
|
||||
85.86328125 -14.465360641 -1.0026057959 96.260353088 7.460498333 -1.5223734379
|
||||
96.502883911 -7.1886177063 -1.2366166115 91.252799988 -12.792214394 -0.66374278069
|
||||
91.256530762 13.021039963 -0.48330181837 93.737541199 -11.281412125 -0.16976931691
|
||||
93.623916626 11.537666321 -0.13601630926 85.613677979 -4.0209794044 21.44903183
|
||||
87.784690857 -5.7306213379 20.483999252 71.309463501 -8.9630508423 1.1030267477
|
||||
88.565422058 -0.47031936049 21.369291306 69.946640015 -6.493927002 0.85934138298
|
||||
91.696861267 2.0594456196 19.921253204 68.326850891 -1.1341192722 1.5142456293
|
||||
90.526580811 -2.0154287815 20.49738884 68.964851379 3.6251702309 0.6516623497
|
||||
84.162536621 0.74264413118 22.053600311 84.963516235 3.5301709175 21.659328461
|
||||
69.472671509 6.2284121513 1.7662577629 70.964988708 8.0465612411 0.21954160929
|
||||
89.288772583 2.0478610992 21.013118744 71.94694519 10.11640358 1.5074537992
|
||||
73.882423401 11.679909706 0.6131657362 87.660568237 4.1107597351 21.09662056
|
||||
78.570098877 14.319248199 0.28635764122 81.398109436 -0.039542023093 21.877750397
|
||||
81.874473572 -15.335308075 1.2801926136 79.346694946 -14.662838936 0.89142125845
|
||||
75.189338684 -13.073919296 2.118512392 83.869102478 8.1319904327 19.921684265
|
||||
88.635147095 6.4962630272 19.961545944 86.731361389 8.5704832077 19.363668442
|
||||
68.934539795 -5.5016207695 3.0568709373 68.182472229 -3.0329532623 3.3641555309
|
||||
86.111984253 -1.28008008 21.859045029 68.120033264 1.5243816376 2.4302587509
|
||||
82.869384766 -4.8706326485 21.264657974 83.008033752 5.5626335144 21.085371017
|
||||
74.799812317 13.091928482 2.6507980824 77.071113586 14.415110588 2.6670820713
|
||||
91.300605774 6.509250164 18.752962112 81.334320068 15.108612061 0.41158956289
|
||||
87.106292725 15.210010529 1.0899428129 82.93145752 -15.942855835 3.6099402905
|
||||
87.259643555 -15.116812706 1.3543372154 77.522331238 -14.503973961 2.778182745
|
||||
90.011764526 -14.291097641 1.5532757044 73.477058411 -12.2420578 4.2751193047
|
||||
71.530235291 -10.192709923 3.7489373684 69.12537384 -6.5941181183 5.4071121216
|
||||
97.661132812 -7.1832942963 1.3970520496 99.051269531 -2.340875864 0.71517699957
|
||||
67.811355591 2.0177323818 5.298584938 98.932067871 2.7008390427 0.47840186954
|
||||
69.16394043 6.7217545509 4.6341018677 97.480735779 7.4635238647 1.0841351748
|
||||
71.668083191 10.562307358 4.0984253883 73.431419373 12.401463509 4.8046808243
|
||||
89.904197693 14.466935158 1.5185189247 82.498054504 15.951388359 2.9863364697
|
||||
78.378440857 -15.157511711 5.3787603378 85.742172241 -15.880959511 3.7394096851
|
||||
94.916046143 -11.291508675 2.4590075016 70.375534058 -8.8716783524 5.952483654
|
||||
96.867851257 -9.2514133453 3.232519865 68.487724304 -4.783539772 7.2270212173
|
||||
98.96244812 -4.743730545 2.4208283424 67.898628235 -2.5581552982 5.95109272
|
||||
67.729598999 -0.17521746457 7.0630040169 99.588371277 0.22703172266 1.897539854
|
||||
68.344161987 4.6160812378 6.4164295197 98.768493652 5.1072278023 1.9310507774
|
||||
70.367912292 9.0008029938 5.7657632828 96.766685486 9.486330986 3.0751867294
|
||||
94.825309753 11.52575779 2.4791102409 91.053062439 14.496319771 4.1568388939
|
||||
78.0414505 15.165470123 5.2009468079 80.798324585 15.966821671 5.3954730034
|
||||
85.429878235 15.98958683 3.2950487137 81.175262451 -15.901431084 5.8099141121
|
||||
86.959205627 -15.827815056 6.3465538025 76.708122253 -14.352934837 7.577829361
|
||||
91.238975525 -14.261891365 4.1597156525 74.214195251 -12.872920036 7.0571479797
|
||||
93.636276245 -12.791466713 4.4916758537 70.996749878 -9.3405475616 8.6625738144
|
||||
99.275878906 4.9346017838 4.5053958893 70.904014587 9.4003772736 8.5003385544
|
||||
74.141960144 12.937249184 7.2781066895 76.526763916 14.401257515 7.5852971077
|
||||
93.549240112 13.016571045 4.6800961494 86.585792542 16.043394089 5.929956913
|
||||
82.329872131 -15.847610474 8.4470214844 89.716423035 -15.028272629 6.5399055481
|
||||
72.937973022 -11.381385803 9.2590341568 94.341346741 -12.254601479 6.9525380135
|
||||
97.399269104 -8.8604249954 5.9713277817 70.283088684 -7.317340374 10.65357399
|
||||
68.996322632 -4.9596843719 9.8072948456 99.425209045 -4.4684643745 5.3211531639
|
||||
68.178886414 -0.077774301171 9.8417978287 100.03770447 0.32278421521 4.6758470535
|
||||
68.716751099 2.4901256561 11.022386551 99.868873596 2.6989159584 5.7875509262
|
||||
68.806869507 4.8927845955 9.3156499863 70.10900116 7.3327684402 10.337064743
|
||||
98.630752563 6.7620286942 6.3039221764 97.387481689 9.0192461014 5.7814645767
|
||||
72.855529785 11.435936928 9.2822656631 82.018455505 16.020938873 8.0011911392
|
||||
84.830131531 16.084064484 8.1300649643 89.383575439 15.300437927 6.3587751389
|
||||
80.651260376 -15.066238403 10.652440071 85.260803223 -15.81047821 8.7579069138
|
||||
77.855102539 -14.324760437 10.214351654 90.697738647 -14.27412796 9.0704126358
|
||||
74.139358521 -11.393578529 11.875226974 92.993438721 -12.938386917 9.0674591064
|
||||
96.077720642 -10.446667671 7.6412587166 98.605644226 -6.5765304565 7.1042432785
|
||||
68.834022522 -2.5524337292 11.261284828 99.956932068 -1.8707530499 6.4395489693
|
||||
96.237937927 10.332806587 7.9906992912 74.031196594 11.423834801 11.908797264
|
||||
94.289154053 12.384137154 7.4637465477 77.754226685 14.431004524 10.187720299
|
||||
90.24080658 14.647202492 8.9595603943 80.503768921 15.256786346 10.385547638
|
||||
86.427894592 -14.967202187 11.332258224 89.196540833 -14.177837372 11.455728531
|
||||
76.510375977 -12.879603386 12.223692894 95.817672729 -9.9789676666 10.232382774
|
||||
71.503295898 -7.3144302368 13.261054039 98.296920776 -6.0829138756 9.9732017517
|
||||
70.033508301 -2.4830093384 13.875641823 99.64831543 -1.377366066 9.3082780838
|
||||
69.892662048 2.5595715046 13.647735596 99.590133667 3.1449890137 8.3792142868
|
||||
98.825012207 5.656276226 8.69784832 71.265663147 7.3356013298 12.972166061
|
||||
73.217277527 9.3710699081 13.754413605 76.515342712 12.932971954 12.404622078
|
||||
92.574630737 13.217608452 9.6196699142 85.889030457 15.477002144 10.458698273
|
||||
88.417167664 14.805689812 10.845931053 81.898681641 -14.301919937 13.076542854
|
||||
84.695785522 -14.197045326 13.5001297 77.9272995 -12.344022751 14.404708862
|
||||
93.890991211 -11.535217285 11.123885155 73.425628662 -9.3702707291 13.866259575
|
||||
96.804512024 -7.9015102386 11.521657944 71.394584656 -4.879928112 14.922848701
|
||||
98.804595947 -3.4772663116 11.087420464 70.547874451 0.085491515696 15.067480087
|
||||
99.44103241 1.2773689032 10.223574638 71.073478699 4.972465992 14.490115166
|
||||
97.803215027 6.6524653435 10.90633297 96.452827454 9.109131813 10.640717506
|
||||
78.126930237 12.30492878 14.79275322 92.789276123 11.994148254 12.269688606
|
||||
81.900970459 14.606261253 12.741520882 88.611129761 13.700297356 13.240077019
|
||||
84.520591736 14.786689758 12.612826347 80.412918091 -12.999524117 14.790127754
|
||||
90.215057373 -12.612891197 13.711359978 77.25692749 -10.511940002 16.191709518
|
||||
92.662376404 -11.247973442 13.437596321 75.126373291 -8.9641675949 16.07408905
|
||||
73.267913818 -4.5957903862 17.182359695 72.340553284 0.18799245358 17.23573494
|
||||
98.424407959 2.0896384716 12.720637321 72.676422119 4.8047919273 16.566770554
|
||||
97.577522278 4.8691310883 13.07363224 74.847763062 8.9089336395 16.002672195
|
||||
77.256111145 10.239971161 16.598190308 94.720924377 9.924911499 12.789842606
|
||||
90.656143188 12.280903816 14.08452034 80.871612549 13.160269737 14.926629066
|
||||
86.202804565 13.688781738 14.331789017 81.320213318 -11.614440918 16.793872833
|
||||
85.720870972 -12.633923531 15.752474785 88.478088379 -11.821995735 15.865057945
|
||||
79.376319885 -10.056192398 17.684120178 83.882110596 -11.294794083 17.414283752
|
||||
93.55847168 -9.1215419769 15.054028511 75.164787292 -6.6879687309 17.733501434
|
||||
95.700904846 -7.3907485008 14.0629673 96.171813965 -4.8047456741 15.233501434
|
||||
97.742927551 -2.7952578068 13.753536224 73.737770081 -1.9980305433 18.328712463
|
||||
97.563423157 0.039076920599 14.547822952 73.268440247 2.5697152615 17.849475861
|
||||
95.861366272 5.6252555847 15.257205009 74.439918518 6.6438217163 17.273675919
|
||||
94.39780426 8.1833057404 15.147660255 90.193656921 10.684290886 16.356664658
|
||||
82.73324585 11.944840431 16.829648972 85.501617432 12.25590229 16.42158699
|
||||
89.282318115 -9.6311206818 17.667209625 79.68434906 -7.9841322899 19.283716202
|
||||
84.490264893 -9.1680116653 19.163682938 91.866317749 -8.2830944061 17.224998474
|
||||
77.52243042 -6.1811833382 19.393672943 94.495613098 -3.977050066 17.421842575
|
||||
76.094711304 -1.4911926985 19.988464355 95.867889404 0.79968386889 16.746007919
|
||||
75.397918701 3.02805233 19.348949432 95.021011353 3.5790715218 17.098968506
|
||||
76.121864319 5.5458760262 18.992940903 78.447967529 6.5581660271 19.68305397
|
||||
79.117698669 9.0244646072 18.501272202 92.088500977 8.5965824127 16.934616089
|
||||
81.868614197 9.8620634079 18.61763382 87.528297424 10.671260834 17.56524086
|
||||
87.23361969 -8.3066082001 19.325193405 82.319099426 -7.4580812454 20.128751755
|
||||
90.310195923 -4.5863904953 19.992795944 92.353279114 -5.7077894211 18.41264534
|
||||
78.005516052 -3.577019453 20.518590927 80.704971313 -2.8780295849 21.478988647
|
||||
94.453559875 -1.2390120029 18.076688766 92.46232605 -0.45156902075 19.602231979
|
||||
76.898384094 1.1682188511 20.445264816 79.439964294 1.9974318743 21.32891655
|
||||
92.815864563 4.1358289719 18.759088516 80.241134644 4.7848229408 20.934680939
|
||||
</DataArray>
|
||||
</Points>
|
||||
<Verts>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
0 1 2 3 4 5
|
||||
6 7 8 9 10 11
|
||||
12 13 14 15 16 17
|
||||
18 19 20 21 22 23
|
||||
24 25 26 27 28 29
|
||||
30 31 32 33 34 35
|
||||
36 37 38 39 40 41
|
||||
42 43 44 45 46 47
|
||||
48 49 50 51 52 53
|
||||
54 55 56 57 58 59
|
||||
60 61 62 63 64 65
|
||||
66 67 68 69 70 71
|
||||
72 73 74 75 76 77
|
||||
78 79 80 81 82 83
|
||||
84 85 86 87 88 89
|
||||
90 91 92 93 94 95
|
||||
96 97 98 99 100 101
|
||||
102 103 104 105 106 107
|
||||
108 109 110 111 112 113
|
||||
114 115 116 117 118 119
|
||||
120 121 122 123 124 125
|
||||
126 127 128 129 130 131
|
||||
132 133 134 135 136 137
|
||||
138 139 140 141 142 143
|
||||
144 145 146 147 148 149
|
||||
150 151 152 153 154 155
|
||||
156 157 158 159 160 161
|
||||
162 163 164 165 166 167
|
||||
168 169 170 171 172 173
|
||||
174 175 176 177 178 179
|
||||
180 181 182 183 184 185
|
||||
186 187 188 189 190 191
|
||||
192 193 194 195 196 197
|
||||
198 199 200 201 202 203
|
||||
204 205 206 207 208 209
|
||||
210 211 212 213 214 215
|
||||
216 217 218 219 220 221
|
||||
222 223 224 225 226 227
|
||||
228 229 230 231 232 233
|
||||
234 235 236 237 238 239
|
||||
240 241 242 243 244 245
|
||||
246 247 248 249 250 251
|
||||
252 253 254 255 256 257
|
||||
258 259 260 261 262 263
|
||||
264 265 266 267 268 269
|
||||
270 271 272 273 274 275
|
||||
276 277 278 279 280 281
|
||||
282 283 284 285 286 287
|
||||
288 289 290 291 292 293
|
||||
294 295 296 297 298 299
|
||||
300 301 302 303 304 305
|
||||
306 307 308 309 310 311
|
||||
312 313 314 315 316 317
|
||||
318 319
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
1 2 3 4 5 6
|
||||
7 8 9 10 11 12
|
||||
13 14 15 16 17 18
|
||||
19 20 21 22 23 24
|
||||
25 26 27 28 29 30
|
||||
31 32 33 34 35 36
|
||||
37 38 39 40 41 42
|
||||
43 44 45 46 47 48
|
||||
49 50 51 52 53 54
|
||||
55 56 57 58 59 60
|
||||
61 62 63 64 65 66
|
||||
67 68 69 70 71 72
|
||||
73 74 75 76 77 78
|
||||
79 80 81 82 83 84
|
||||
85 86 87 88 89 90
|
||||
91 92 93 94 95 96
|
||||
97 98 99 100 101 102
|
||||
103 104 105 106 107 108
|
||||
109 110 111 112 113 114
|
||||
115 116 117 118 119 120
|
||||
121 122 123 124 125 126
|
||||
127 128 129 130 131 132
|
||||
133 134 135 136 137 138
|
||||
139 140 141 142 143 144
|
||||
145 146 147 148 149 150
|
||||
151 152 153 154 155 156
|
||||
157 158 159 160 161 162
|
||||
163 164 165 166 167 168
|
||||
169 170 171 172 173 174
|
||||
175 176 177 178 179 180
|
||||
181 182 183 184 185 186
|
||||
187 188 189 190 191 192
|
||||
193 194 195 196 197 198
|
||||
199 200 201 202 203 204
|
||||
205 206 207 208 209 210
|
||||
211 212 213 214 215 216
|
||||
217 218 219 220 221 222
|
||||
223 224 225 226 227 228
|
||||
229 230 231 232 233 234
|
||||
235 236 237 238 239 240
|
||||
241 242 243 244 245 246
|
||||
247 248 249 250 251 252
|
||||
253 254 255 256 257 258
|
||||
259 260 261 262 263 264
|
||||
265 266 267 268 269 270
|
||||
271 272 273 274 275 276
|
||||
277 278 279 280 281 282
|
||||
283 284 285 286 287 288
|
||||
289 290 291 292 293 294
|
||||
295 296 297 298 299 300
|
||||
301 302 303 304 305 306
|
||||
307 308 309 310 311 312
|
||||
313 314 315 316 317 318
|
||||
319 320
|
||||
</DataArray>
|
||||
</Verts>
|
||||
<Lines>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Lines>
|
||||
<Strips>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Strips>
|
||||
<Polys>
|
||||
<DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="319">
|
||||
</DataArray>
|
||||
<DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1" RangeMax="320">
|
||||
</DataArray>
|
||||
</Polys>
|
||||
</Piece>
|
||||
</PolyData>
|
||||
</VTKFile>
|
||||
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0"?>
|
||||
<VTKFile type="RectilinearGrid" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor">
|
||||
<RectilinearGrid WholeExtent="0 1 0 1 0 1">
|
||||
<Piece Extent="0 1 0 1 0 1">
|
||||
<PointData>
|
||||
</PointData>
|
||||
<CellData>
|
||||
</CellData>
|
||||
<Coordinates>
|
||||
<DataArray type="Float64" Name="Array 0x555d54977d40" format="ascii" RangeMin="-120" RangeMax="120">
|
||||
-120 120
|
||||
</DataArray>
|
||||
<DataArray type="Float64" Name="Array 0x555d54977eb0" format="ascii" RangeMin="-100" RangeMax="100">
|
||||
-100 100
|
||||
</DataArray>
|
||||
<DataArray type="Float64" Name="Array 0x555d54978020" format="ascii" RangeMin="-120" RangeMax="120">
|
||||
-120 120
|
||||
</DataArray>
|
||||
</Coordinates>
|
||||
</Piece>
|
||||
</RectilinearGrid>
|
||||
</VTKFile>
|
||||
BIN
examples/PACKAGES/latboltz/pit_geometry/fflow.raw
Normal file
BIN
examples/PACKAGES/latboltz/pit_geometry/fflow.raw
Normal file
Binary file not shown.
71
examples/PACKAGES/latboltz/pit_geometry/fflow.xdmf
Normal file
71
examples/PACKAGES/latboltz/pit_geometry/fflow.xdmf
Normal file
@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE Xdmf SYSTEM "Xdmf.dtd" []>
|
||||
<Xdmf Version="2.0">
|
||||
<Domain>
|
||||
<Grid Name="fluid" GridType="Collection" CollectionType="Temporal">
|
||||
|
||||
<Grid Name="0">
|
||||
<Time Value="0.000000"/>
|
||||
|
||||
<Topology TopologyType="3DCoRectMesh" Dimensions="61 51 61"/>
|
||||
<Geometry GeometryType="ORIGIN_DXDYDZ">
|
||||
<DataItem Dimensions="3">
|
||||
-120.000000 -100.000000 -120.000000
|
||||
</DataItem>
|
||||
<DataItem Dimensions="3">
|
||||
4.000000 4.000000 4.000000
|
||||
</DataItem>
|
||||
</Geometry>
|
||||
|
||||
<Attribute Name="density">
|
||||
<DataItem ItemType="Function" Function="$0 * 1.000000" Dimensions="61 51 61">
|
||||
<DataItem Precision="8" Format="Binary" Seek="0" Dimensions="61 51 61">
|
||||
fflow.raw
|
||||
</DataItem>
|
||||
</DataItem>
|
||||
</Attribute>
|
||||
|
||||
<Attribute Name="velocity" AttributeType="Vector">
|
||||
<DataItem ItemType="Function" Function="$0 * 2.000000" Dimensions="61 51 61 3">
|
||||
<DataItem Precision="8" Format="Binary" Seek="1518168" Dimensions="61 51 61 3">
|
||||
fflow.raw
|
||||
</DataItem>
|
||||
</DataItem>
|
||||
</Attribute>
|
||||
|
||||
</Grid>
|
||||
|
||||
<Grid Name="2500">
|
||||
<Time Value="1.000000"/>
|
||||
|
||||
<Topology TopologyType="3DCoRectMesh" Dimensions="61 51 61"/>
|
||||
<Geometry GeometryType="ORIGIN_DXDYDZ">
|
||||
<DataItem Dimensions="3">
|
||||
-120.000000 -100.000000 -120.000000
|
||||
</DataItem>
|
||||
<DataItem Dimensions="3">
|
||||
4.000000 4.000000 4.000000
|
||||
</DataItem>
|
||||
</Geometry>
|
||||
|
||||
<Attribute Name="density">
|
||||
<DataItem ItemType="Function" Function="$0 * 1.000000" Dimensions="61 51 61">
|
||||
<DataItem Precision="8" Format="Binary" Seek="6072672" Dimensions="61 51 61">
|
||||
fflow.raw
|
||||
</DataItem>
|
||||
</DataItem>
|
||||
</Attribute>
|
||||
|
||||
<Attribute Name="velocity" AttributeType="Vector">
|
||||
<DataItem ItemType="Function" Function="$0 * 2.000000" Dimensions="61 51 61 3">
|
||||
<DataItem Precision="8" Format="Binary" Seek="7590840" Dimensions="61 51 61 3">
|
||||
fflow.raw
|
||||
</DataItem>
|
||||
</DataItem>
|
||||
</Attribute>
|
||||
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
</Domain>
|
||||
</Xdmf>
|
||||
@ -2,9 +2,9 @@
|
||||
|
||||
320 atoms
|
||||
1 atom types
|
||||
-160.0 160.0 xlo xhi
|
||||
-160.0 160.0 ylo yhi
|
||||
-40.0 280.0 zlo zhi
|
||||
-120.0 120.0 xlo xhi
|
||||
-100.0 100.0 ylo yhi
|
||||
-120.0 120.0 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
@ -1,16 +1,17 @@
|
||||
#===========================================================================#
|
||||
# Rigid sphere freely moving near a stationary plane wall in a system #
|
||||
# undergoing shear flow. #
|
||||
# Every 10 time steps the center of mass velocity and angular velocity of #
|
||||
# the sphere are printed to the screen. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is set by the user (gamma = 13.655 for this simulation...this #
|
||||
# value has been calibrated a priori through simulations of the drag #
|
||||
# force acting on a single particle of the same radius). #
|
||||
# Rigid sphere freely moving in a system with pressure driven flow through #
|
||||
# a pit geometry. #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'wall_setgamma.out' #
|
||||
# The example produces several output files: #
|
||||
# 'flow.xdmf', 'flow.raw' ... xdmf and accompanying binary file for the #
|
||||
# fluid density and velocity which can be read#
|
||||
# and plotted using Paraview. #
|
||||
# 'dumpatomsXX.vtp', 'dumpatomsXX_boundingBox.vtr' ... produces by the #
|
||||
# dumpvtk routine (requires that lammps be #
|
||||
# compiled with the vtk package). These filed#
|
||||
# can also be read and plotted using Paraview.#
|
||||
# XX is the timestep of the dump output. #
|
||||
# 'screen.out' ... terminal output from the run. #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
@ -32,7 +33,7 @@ atom_style atomic
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1
|
||||
|
||||
read_data data.one_radius16d2
|
||||
read_data one_radius16d2.data
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles interact with one another.
|
||||
@ -42,7 +43,7 @@ pair_coeff * * 0.0 0.0 2.45
|
||||
neigh_modify exclude type 1 1
|
||||
|
||||
mass * 100.0
|
||||
timestep 4.0
|
||||
timestep 2.0
|
||||
|
||||
group sphere1 id <> 1 320
|
||||
|
||||
@ -54,26 +55,48 @@ velocity all set 0.0 0.0 0.0 units box
|
||||
#----------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles...this is accomplished through the use of the rigid_pc_sphere
|
||||
# fix).
|
||||
# Use the LB integration scheme of Ollila et. al. (for stability reasons,
|
||||
# this integration scheme should be used when a large user set value for
|
||||
# gamma is specified), a fluid density = 1.0, fluid viscosity = 1.0, value
|
||||
# for gamma=13.655, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Create shear in the system, by giving the upper z-wall a velocity of 0.0001
|
||||
# along the y-direction, while keeping the lower z-wall stationary.
|
||||
# (however, this fix does not explicity apply a force back on to these
|
||||
# particles...this is accomplished through the use of the lb/viscous fix).
|
||||
# Set the fluid density = 1.0, fluid viscosity = 1.0 (water), and lattice
|
||||
# spacing dx=4.0.
|
||||
# dumpxdmf is set to output to the xdmf file (fflow.xdmf and fflow.raw) every
|
||||
# 2500 steps, indexed by the frame number (rather than timestep).
|
||||
# The flow is generated via a pressure jump at the otherwise periodic x-
|
||||
# boundary using the pressurebcx option.
|
||||
# The initial conditions are set as linear interpolation between boundary
|
||||
# values using the linearInit option.
|
||||
#-----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 2 1.0 1.0 setGamma 13.655 dx 4.0 dm 10.0 zwall_velocity 0.0 0.0001
|
||||
fix 1 all lb/fluid 1 1.0 1.0 dx 4.0 dumpxdmf 2500 fflow 0 linearInit pressurebcx 0.01 npits 2 20 40 5 0 wp 30
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# You can get some other interesting geometries by replacing the npits options
|
||||
# at the end of the above lb/fluid fix with one of the following:
|
||||
#-----------------------------------------------------------------------------
|
||||
# Channel with 2 pits placed symmetrically about center in x:
|
||||
#npits 2 20 20 10 5 sw
|
||||
|
||||
# Channel with 1 pit placed at center:
|
||||
#npits 1 20 20 20 sw
|
||||
|
||||
# Full channel with 1 "speedbump" placed in right end of the channel:
|
||||
#npits 2 20 40 5 0 sw
|
||||
|
||||
# Channel with 2 "potholes" placed symmetrically about center in x:
|
||||
#npits 2 20 15 10 10 wp 30
|
||||
|
||||
# Channel with T-shaped cross-section with a "speedbump" in right end:
|
||||
#npits 2 20 40 5 0 wp 30
|
||||
|
||||
# Long rectangular channel (all pit, no slit):
|
||||
#npits 1 20 65 5 0 sw
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining them to move and rotate together as a single rigid
|
||||
# spherical object.
|
||||
# NOTE: This fix should only be used when the user specifies a value for
|
||||
# gamma (through the setGamma keyword) in the lb_fluid fix.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 all lb/rigid/pc/sphere group 1 sphere1
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 all lb/viscous
|
||||
fix 3 all rigid group 1 sphere1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables for the center-of-mass and angular velocities, and output
|
||||
@ -86,7 +109,9 @@ variable omegax equal omega(all,x)
|
||||
variable omegay equal omega(all,y)
|
||||
variable omegaz equal omega(all,z)
|
||||
|
||||
thermo_style custom v_vx v_vy v_vz v_omegax v_omegay v_omegaz
|
||||
thermo 10
|
||||
thermo_style custom step f_1[2] v_vx v_vy v_vz v_omegax v_omegay v_omegaz
|
||||
thermo 500
|
||||
|
||||
run 200000
|
||||
dump dumpvtk all vtk 2500 dumpatoms*.vtp vx vy vz
|
||||
|
||||
run 2500
|
||||
70
examples/PACKAGES/latboltz/pit_geometry/pits.out
Normal file
70
examples/PACKAGES/latboltz/pit_geometry/pits.out
Normal file
@ -0,0 +1,70 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (-120.00000 -100.00000 -120.00000) to (120.00000 100.00000 120.00000)
|
||||
2 by 1 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
320 atoms
|
||||
read_data CPU = 0.008 seconds
|
||||
320 atoms in group sphere1
|
||||
Using a lattice-Boltzmann grid of 60 by 50 by 61 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
length of pits and end segments larger than system size in x-direction: truncation will occur (../fix_lb_fluid.cpp:494)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
1 rigid bodies with 320 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.45
|
||||
ghost atom cutoff = 3.45
|
||||
binsize = 1.725, bins = 140 116 140
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : micro
|
||||
Current step : 0
|
||||
Time step : 2
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.225 | 7.225 | 7.225 Mbytes
|
||||
Step f_1[2] v_vx v_vy v_vz v_omegax v_omegay v_omegaz
|
||||
0 10054461 0 0 0 0 0 0
|
||||
500 10055203 0.008268321 2.9442616e-05 0.0019660229 -5.0307394e-07 2.1873981e-05 2.2701522e-07
|
||||
1000 10055487 0.015301314 4.219514e-05 0.0029217734 -6.9936017e-07 6.8198965e-05 5.2031048e-07
|
||||
1500 10055663 0.02117119 2.9194379e-05 0.002365636 -7.5401298e-07 0.00011557032 4.0311183e-07
|
||||
2000 10055781 0.02523262 -9.149834e-06 -0.0001724854 -2.5872732e-07 0.00014864932 3.7644295e-07
|
||||
2500 10055866 0.02651785 -5.2469712e-05 -0.0030476651 2.9151609e-07 0.00014663544 7.8650891e-07
|
||||
Loop time of 88.7186 on 4 procs for 2500 steps with 320 atoms
|
||||
|
||||
Performance: 4869327934.296 ns/day, 0.000 hours/ns, 28.179 timesteps/s
|
||||
99.1% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.0049214 | 0.0074319 | 0.01069 | 2.9 | 0.01
|
||||
Neigh | 0.25996 | 0.26957 | 0.28281 | 1.9 | 0.30
|
||||
Comm | 0.034344 | 0.047966 | 0.066438 | 6.3 | 0.05
|
||||
Output | 0.027428 | 0.039502 | 0.04364 | 3.5 | 0.04
|
||||
Modify | 88.227 | 88.258 | 88.292 | 0.3 | 99.48
|
||||
Other | | 0.09591 | | | 0.11
|
||||
|
||||
Nlocal: 80.0000 ave 219 max 0 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Nghost: 17.7500 ave 36 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Neighbor list builds = 176
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 16.184525
|
||||
LB update time: 35.882755
|
||||
LB PCalc time: 22.914380
|
||||
LB fluidForce time: 8.049794
|
||||
LB CorrectU time: 5.031811
|
||||
Total wall time: 0:01:28
|
||||
@ -2,9 +2,9 @@
|
||||
|
||||
320 atoms
|
||||
1 atom types
|
||||
-160.0 160.0 xlo xhi
|
||||
-160.0 160.0 ylo yhi
|
||||
-160.0 160.0 zlo zhi
|
||||
-120.0 120.0 xlo xhi
|
||||
-120.0 120.0 ylo yhi
|
||||
-120.0 120.0 zlo zhi
|
||||
|
||||
Atoms
|
||||
|
||||
@ -1,16 +1,13 @@
|
||||
#===========================================================================#
|
||||
# Rigid sphere freely moving near a stationary plane wall in a system #
|
||||
# undergoing shear flow. #
|
||||
# undergoing shear flow. #
|
||||
# Every 10 time steps the center of mass velocity and angular velocity of #
|
||||
# the sphere are printed to the screen. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the particle-fluid interaction #
|
||||
# force) is calculated by default. Thus, the colloidal objects will have #
|
||||
# a slightly larger "hydrodynamic" radii than given by the placement of #
|
||||
# the particle nodes. #
|
||||
# the sphere are printed to the screen. #
|
||||
# To run this example, LAMMPS needs to be compiled with a the following #
|
||||
# packages: RIGID, LATBOLTZ #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'wall_defaultgamma.out' #
|
||||
# 'planewall.out' #
|
||||
#===========================================================================#
|
||||
|
||||
units micro
|
||||
@ -28,11 +25,14 @@ atom_style atomic
|
||||
# be somewhat increased without issue. If a problem does arise (a particle
|
||||
# is outside of its processors LB grid) an error message is printed and
|
||||
# the simulation is terminated.
|
||||
# The communcation cutoff is set to 2.5 dx to ensure that all particles in the
|
||||
# processor ghost fluid region (of width 2dx) are known to local processor.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 1.0 bin
|
||||
neigh_modify delay 0 every 1
|
||||
comm_modify cutoff 10.0
|
||||
|
||||
read_data data.one_radius16d2
|
||||
read_data one_radius16d2.data
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# None of the particles interact with one another.
|
||||
@ -41,8 +41,9 @@ pair_style lj/cut 2.45
|
||||
pair_coeff * * 0.0 0.0 2.45
|
||||
neigh_modify exclude type 1 1
|
||||
|
||||
mass * 100.0
|
||||
timestep 3.0
|
||||
mass * 1.0
|
||||
|
||||
timestep 4.0
|
||||
|
||||
group sphere1 id <> 1 320
|
||||
|
||||
@ -55,21 +56,15 @@ velocity all set 0.0 0.0 0.0 units box
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# All of the particles in the simulation apply a force to the fluid.
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles...this is accomplished through the use of the viscous_lb fix.
|
||||
# Use the standard LB integration scheme, a fluid density = 1.0,
|
||||
# fluid viscosity = 1.0, lattice spacing dx=4.0, and mass unit, dm=10.0.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation requires the surface area
|
||||
# of the composite object represented by each particle node. By default
|
||||
# this area is assumed equal to dx*dx; however, since this is not the case
|
||||
# here, it is input through the setArea keyword (i.e. particles of type 1
|
||||
# correspond to a surface area of 10.3059947).
|
||||
# Use the trilinear interpolation stencil to distribute the force from
|
||||
# a given particle onto the fluid mesh.
|
||||
# particles...this is accomplished through the use of the lb/viscous fix.
|
||||
# Use a fluid density = 1.0, fluid viscosity = 1.0 (water), and a lattice
|
||||
# spacing dx=4.0.
|
||||
# Use the trilinear interpolation stencil (default) to distribute the force
|
||||
# from a given particle onto the fluid mesh.
|
||||
# Create shear in the system, by giving the upper z-wall a velocity of 0.0001
|
||||
# along the y-direction, while keeping the lower z-wall stationary.
|
||||
#-----------------------------------------------------------------------------
|
||||
fix 1 all lb/fluid 1 1 1.0 1.0 setArea 1 10.3059947 dx 4.0 dm 10.0 trilinear zwall_velocity 0.0 0.0001
|
||||
fix 1 all lb/fluid 1 1.0 1.0 dx 4.0 zwall_velocity 0.0 0.0001
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force due to the fluid onto the particles.
|
||||
@ -78,13 +73,18 @@ fix 2 all lb/viscous
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Integrate the motion of the particles, constraining them to move and
|
||||
# rotate together as a single rigid spherical object.
|
||||
# rotate together as a single rigid spherical object. Use the first
|
||||
# version to allow the sphere to freely rotate and move with the fluid
|
||||
# and the 2nd version to measure the force and torque on a fixed sphere
|
||||
# in the shear flow which will allow you to measure the Stokes drag and
|
||||
# torque on the sphere.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 3 all rigid group 1 sphere1
|
||||
fix 3 all rigid group 1 sphere1
|
||||
#fix 3 all rigid group 1 sphere1 force * off off off torque * off off off
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create variables for the center-of-mass and angular velocities, and output
|
||||
# these quantities to the screen.
|
||||
# Create variables for the center-of-mass velocities, angular velocities, and
|
||||
# force and torque on the CM. Then output these quantities to the screen.
|
||||
#----------------------------------------------------------------------------
|
||||
variable vx equal vcm(all,x)
|
||||
variable vy equal vcm(all,y)
|
||||
@ -92,8 +92,14 @@ variable vz equal vcm(all,z)
|
||||
variable omegax equal omega(all,x)
|
||||
variable omegay equal omega(all,y)
|
||||
variable omegaz equal omega(all,z)
|
||||
variable fx equal fcm(all,x)
|
||||
variable fy equal fcm(all,y)
|
||||
variable fz equal fcm(all,z)
|
||||
variable tx equal torque(all,x)
|
||||
variable ty equal torque(all,y)
|
||||
variable tz equal torque(all,z)
|
||||
|
||||
thermo_style custom v_vx v_vy v_vz v_omegax v_omegay v_omegaz
|
||||
thermo 10
|
||||
thermo_style custom v_vx v_vy v_vz v_omegax v_omegay v_omegaz v_fx v_fy v_fz v_tx v_ty v_tz
|
||||
thermo 100
|
||||
|
||||
run 200000
|
||||
run 7500
|
||||
139
examples/PACKAGES/latboltz/planewall/planewall.out
Normal file
139
examples/PACKAGES/latboltz/planewall/planewall.out
Normal file
@ -0,0 +1,139 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (-120.00000 -120.00000 -120.00000) to (120.00000 120.00000 120.00000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
320 atoms
|
||||
read_data CPU = 0.008 seconds
|
||||
320 atoms in group sphere1
|
||||
Using a lattice-Boltzmann grid of 60 by 60 by 61 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
1 rigid bodies with 320 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.45
|
||||
ghost atom cutoff = 10
|
||||
binsize = 1.725, bins = 140 140 140
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : micro
|
||||
Current step : 0
|
||||
Time step : 4
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.426 | 8.426 | 8.426 Mbytes
|
||||
v_vx v_vy v_vz v_omegax v_omegay v_omegaz v_fx v_fy v_fz v_tx v_ty v_tz
|
||||
0 0 0 0 0 0 0 0 0 0 0 0
|
||||
-2.3202888e-15 6.0709101e-09 -2.4412623e-13 -3.320168e-10 -1.1339769e-14 3.4045799e-14 -4.5990491e-16 3.6944668e-08 -1.4797148e-12 -3.3087894e-07 -3.2319943e-12 4.0825356e-11
|
||||
2.2614166e-13 3.5465948e-07 -9.9990351e-12 -1.2716738e-08 -5.1515303e-13 1.1802563e-12 4.4099503e-13 6.2398067e-07 -1.4010079e-11 -3.2779726e-06 -5.5610241e-11 3.8420418e-10
|
||||
9.9446526e-13 1.6203654e-06 -2.9965809e-11 -4.2770461e-08 -1.8551769e-12 3.935908e-12 7.0873308e-13 1.3654678e-06 -1.6036096e-11 -4.7351845e-06 -9.5164548e-11 5.5370816e-10
|
||||
1.8577304e-12 3.6408926e-06 -4.7867194e-11 -7.6340276e-08 -3.4227185e-12 7.0027746e-12 6.4525598e-13 1.8162442e-06 -1.2450308e-11 -4.49885e-06 -9.721214e-11 5.2404154e-10
|
||||
2.5784818e-12 6.0541618e-06 -6.1511675e-11 -1.0586215e-07 -4.8340636e-12 9.6842864e-12 5.0954806e-13 2.0115015e-06 -9.6836459e-12 -3.7358552e-06 -8.3756951e-11 4.3294805e-10
|
||||
3.1388911e-12 8.606157e-06 -7.2849939e-11 -1.2968814e-07 -5.9880947e-12 1.18341e-11 3.9602348e-13 2.0531243e-06 -8.7301633e-12 -2.9477e-06 -6.7497759e-11 3.3979481e-10
|
||||
3.5088487e-12 1.1153105e-05 -8.4778552e-11 -1.4827121e-07 -6.9042127e-12 1.3490413e-11 1.4926704e-13 2.012457e-06 -1.1121284e-11 -2.2774279e-06 -5.6689366e-11 2.5766138e-10
|
||||
3.6203369e-12 1.3620493e-05 -1.0074918e-10 -1.6255823e-07 -7.6327828e-12 1.4733197e-11 2.8190134e-14 1.9308502e-06 -1.3951766e-11 -1.743828e-06 -4.5410719e-11 1.9387811e-10
|
||||
3.5893239e-12 1.5972746e-05 -1.1992769e-10 -1.7347444e-07 -8.2060683e-12 1.5658564e-11 -7.5902354e-14 1.8309433e-06 -1.6655785e-11 -1.3300214e-06 -3.6956327e-11 1.4453207e-10
|
||||
3.4369216e-12 1.8195336e-05 -1.4242882e-10 -1.8179239e-07 -8.6609693e-12 1.6339062e-11 -1.5582523e-13 1.7248165e-06 -1.9125572e-11 -1.0126439e-06 -3.0479042e-11 1.0521684e-10
|
||||
3.1272907e-12 2.0284863e-05 -1.6693014e-10 -1.8812271e-07 -9.0539095e-12 1.6840547e-11 -3.2806998e-13 1.6187734e-06 -1.7338933e-11 -7.7034531e-07 -4.18956e-11 7.893297e-11
|
||||
2.6336268e-12 2.2243653e-05 -1.8945116e-10 -1.9293745e-07 -9.4581385e-12 1.720649e-11 -4.4473581e-13 1.5159979e-06 -1.8187251e-11 -5.858335e-07 -3.9427386e-11 5.7483932e-11
|
||||
2.0046303e-12 2.4076859e-05 -2.0991971e-10 -1.9659836e-07 -9.7540611e-12 1.7464607e-11 -5.3232938e-13 1.417998e-06 -1.33357e-11 -4.4535934e-07 -2.2183067e-11 4.087927e-11
|
||||
1.8043659e-12 2.57909e-05 -2.251392e-10 -1.9938137e-07 -9.9135163e-12 1.7702226e-11 -8.1829532e-14 1.3253893e-06 -1.1758285e-11 -3.3855787e-07 -1.1111144e-11 3.6790045e-11
|
||||
1.6716765e-12 2.7392642e-05 -2.3970723e-10 -2.0149677e-07 -1.0039419e-11 1.7837499e-11 -9.9475985e-14 1.2383189e-06 -1.1662512e-11 -2.5732441e-07 -9.4988118e-12 2.1805637e-11
|
||||
1.4587868e-12 2.8888967e-05 -2.5363201e-10 -2.0310437e-07 -1.0169348e-11 1.7892616e-11 -5.6898373e-14 1.1566938e-06 -9.8557007e-12 -1.9551474e-07 -1.9984471e-11 4.8846772e-12
|
||||
1.4100591e-12 3.0286556e-05 -2.6363101e-10 -2.0432561e-07 -1.0375492e-11 1.7885827e-11 -2.116508e-13 1.0803004e-06 -7.2760242e-12 -1.484988e-07 -1.9669998e-11 -3.7541543e-12
|
||||
5.0115337e-13 3.1591785e-05 -2.7207072e-10 -2.0525299e-07 -1.040677e-11 1.7783826e-11 -8.2321665e-13 1.0088701e-06 -4.5772437e-12 -1.1272217e-07 4.4307683e-12 -3.0620406e-12
|
||||
-5.8233e-13 3.2810682e-05 -2.7706702e-10 -2.0595685e-07 -1.0331077e-11 1.7711421e-11 -9.0024161e-13 9.4212051e-07 -1.7450813e-12 -8.552747e-08 1.6465807e-11 -1.1919394e-11
|
||||
-1.2278986e-12 3.3948917e-05 -2.7737567e-10 -2.0649056e-07 -1.0269686e-11 1.7690544e-11 -2.7606089e-13 8.7976413e-07 1.1137199e-12 -6.4828506e-08 5.969611e-12 6.1895863e-12
|
||||
-1.5406065e-12 3.5011807e-05 -2.7530664e-10 -2.0689506e-07 -1.0230405e-11 1.7713982e-11 -2.4182843e-13 8.2152268e-07 2.0572801e-12 -4.9118994e-08 6.9332841e-12 4.3109123e-12
|
||||
-1.8436988e-12 3.6004328e-05 -2.7268697e-10 -2.0720139e-07 -1.0182673e-11 1.7730423e-11 -2.4623511e-13 7.6712961e-07 2.060507e-12 -3.7177338e-08 8.304141e-12 2.8568851e-12
|
||||
-2.1592812e-12 3.693113e-05 -2.7044735e-10 -2.074331e-07 -1.0124124e-11 1.7740913e-11 -2.6133386e-13 7.1633405e-07 1.4428527e-12 -2.8098731e-08 9.7066289e-12 1.8079946e-12
|
||||
-2.1007619e-12 3.7796564e-05 -2.6680968e-10 -2.0760821e-07 -9.9957059e-12 1.7730904e-11 3.5315241e-13 6.689009e-07 3.8443622e-12 -2.1224576e-08 2.4710992e-11 -1.7986278e-12
|
||||
-1.9557805e-12 3.860469e-05 -2.5957119e-10 -2.0774047e-07 -9.8753834e-12 1.7718848e-11 -2.9478921e-14 6.2460647e-07 6.106131e-12 -1.6021507e-08 1.1023998e-11 4.1076291e-12
|
||||
-2.032736e-12 3.9359303e-05 -2.5158305e-10 -2.0784005e-07 -9.7873438e-12 1.7712473e-11 -5.9512464e-14 5.8324585e-07 6.1916716e-12 -1.2039909e-08 1.2585113e-11 -1.3834171e-12
|
||||
-2.1127776e-12 4.0063946e-05 -2.440354e-10 -2.0791478e-07 -9.6912281e-12 1.7690577e-11 -6.3724538e-14 5.4462318e-07 5.7542824e-12 -9.0191552e-09 1.4276089e-11 -2.3574292e-12
|
||||
-2.3902344e-12 4.0721927e-05 -2.3654619e-10 -2.0797067e-07 -9.6167465e-12 1.7704683e-11 -4.4176097e-13 5.0855857e-07 6.2479839e-12 -6.7282157e-09 6.7015199e-12 9.6977453e-12
|
||||
-2.9449998e-12 4.1336337e-05 -2.2904024e-10 -2.0801226e-07 -9.5792815e-12 1.7759253e-11 -4.1120238e-13 4.7488125e-07 5.6719561e-12 -4.9923338e-09 5.5881453e-12 9.0637113e-12
|
||||
-3.4106994e-12 4.191006e-05 -2.2244742e-10 -2.0804302e-07 -9.5439345e-12 1.7819348e-11 -3.2449553e-13 4.4343429e-07 4.8497242e-12 -3.6777395e-09 5.1150823e-12 9.0947463e-12
|
||||
-3.5852249e-12 4.2445791e-05 -2.1618947e-10 -2.080656e-07 -9.4749377e-12 1.7845812e-11 1.0655839e-13 4.1407045e-07 5.2707815e-12 -2.6881271e-09 1.5541392e-11 -1.5116726e-12
|
||||
-3.4019698e-12 4.2946045e-05 -2.1010849e-10 -2.0808201e-07 -9.3573737e-12 1.7835452e-11 1.6858729e-13 3.8665059e-07 4.4152799e-12 -1.938804e-09 1.7265863e-11 -1.6678153e-12
|
||||
-3.1820565e-12 4.3413174e-05 -2.0519131e-10 -2.0809376e-07 -9.2323294e-12 1.782123e-11 2.7307342e-13 3.6104485e-07 4.5405606e-12 -1.381731e-09 7.844705e-12 -2.1593177e-11
|
||||
-1.9265518e-12 4.3849368e-05 -1.9974093e-10 -2.081021e-07 -9.2365556e-12 1.7734315e-11 9.3143689e-13 3.3713551e-07 4.5961813e-12 -9.3911384e-10 -1.0492532e-11 -3.4710604e-11
|
||||
-7.5558483e-13 4.4256676e-05 -1.9451038e-10 -2.0810757e-07 -9.2981772e-12 1.7593311e-11 8.8290403e-13 3.1481065e-07 3.7293121e-12 -5.9201041e-10 -1.920229e-12 -4.5261347e-12
|
||||
-6.8078423e-14 4.4637011e-05 -1.9017e-10 -2.0811091e-07 -9.2985302e-12 1.7560504e-11 2.3613824e-13 2.9396314e-07 2.8306791e-12 -3.6072498e-10 1.919591e-12 5.7324777e-14
|
||||
-2.6872645e-13 4.4992159e-05 -1.8489448e-10 -2.081129e-07 -9.1988109e-12 1.7585096e-11 -3.7386314e-13 2.7449607e-07 4.3641203e-12 -2.0179873e-10 1.7903185e-11 9.4883417e-12
|
||||
-7.6146932e-13 4.5323788e-05 -1.7973612e-10 -2.0811387e-07 -9.067395e-12 1.7625673e-11 -4.0029726e-13 2.5631874e-07 3.8153502e-12 -7.7154264e-11 1.864561e-11 7.0852862e-12
|
||||
-1.0073144e-12 4.5633459e-05 -1.7567167e-10 -2.0811405e-07 -8.9461618e-12 1.7602722e-11 -8.8146729e-14 2.3934617e-07 2.900483e-12 1.3609831e-11 1.8144897e-11 -1.0950951e-12
|
||||
-1.1183452e-12 4.5922622e-05 -1.7267861e-10 -2.0811371e-07 -8.8220108e-12 1.7567954e-11 -8.7131925e-14 2.2349647e-07 1.9871901e-12 7.3396979e-11 1.8201205e-11 -3.3808282e-12
|
||||
-1.2336249e-12 4.6192637e-05 -1.7082009e-10 -2.0811304e-07 -8.6931853e-12 1.7534253e-11 -1.0358975e-13 2.0869604e-07 9.8971584e-13 1.1034572e-10 1.8570854e-11 -4.1945968e-12
|
||||
-1.395039e-12 4.644477e-05 -1.7090836e-10 -2.0811204e-07 -8.5394724e-12 1.7470422e-11 -2.2192138e-13 1.9487513e-07 -1.0653437e-12 1.5048013e-10 2.2960595e-11 -7.9254026e-12
|
||||
-1.5887239e-12 4.6680205e-05 -1.726235e-10 -2.0811078e-07 -8.3735722e-12 1.7394789e-11 5.3191009e-14 1.8196634e-07 -1.4136613e-12 2.2963534e-10 2.654505e-11 -1.8261053e-12
|
||||
-1.4689452e-12 4.6900047e-05 -1.7480066e-10 -2.081091e-07 -8.2058094e-12 1.7351678e-11 1.2094829e-13 1.6991911e-07 -2.6013388e-12 2.4677201e-10 1.76692e-11 -7.1825235e-12
|
||||
-1.3595687e-12 4.7105333e-05 -1.7899795e-10 -2.081074e-07 -8.0435813e-12 1.7311436e-11 -2.3058185e-13 1.586669e-07 -5.9352116e-12 2.143538e-10 3.2425344e-11 -1.0330713e-11
|
||||
-1.6431943e-12 4.7297025e-05 -1.8929524e-10 -2.0810597e-07 -7.7996954e-12 1.7199148e-11 -2.3195078e-13 1.4815965e-07 -9.1089087e-12 2.0069043e-10 2.7268474e-11 -1.5424889e-11
|
||||
-1.9503819e-12 4.7476021e-05 -2.0221518e-10 -2.0810468e-07 -7.655314e-12 1.7080428e-11 -2.618849e-13 1.383469e-07 -1.0767028e-11 1.6168876e-10 1.2892606e-11 -1.6616695e-11
|
||||
-2.293052e-12 4.7643164e-05 -2.1485895e-10 -2.0810355e-07 -7.6010878e-12 1.6957401e-11 -2.8846319e-13 1.2918561e-07 -9.5229628e-12 1.583733e-10 4.7988904e-12 -1.7439504e-11
|
||||
-2.5677362e-12 4.7799238e-05 -2.3224794e-10 -2.0810274e-07 -7.733652e-12 1.6817843e-11 4.7024153e-15 1.2062891e-07 -1.6977112e-11 1.0067875e-10 -5.9706483e-12 -6.6309632e-12
|
||||
-2.5737947e-12 4.7944975e-05 -2.542538e-10 -2.0810213e-07 -7.6510888e-12 1.676216e-11 -3.154599e-14 1.1264034e-07 -1.7155189e-11 8.6731774e-11 1.320634e-11 -5.9239428e-12
|
||||
-3.3012431e-12 4.808106e-05 -2.7606974e-10 -2.0810154e-07 -7.5285751e-12 1.6730121e-11 -5.5195274e-13 1.051819e-07 -1.8102675e-11 7.9086408e-11 2.549833e-11 3.8248179e-12
|
||||
-4.0407963e-12 4.8208133e-05 -2.9913872e-10 -2.0810087e-07 -7.3675841e-12 1.6729661e-11 -1.056947e-13 9.8215693e-08 -2.0564122e-11 8.9889186e-11 9.0969559e-12 -5.0411456e-12
|
||||
-4.0017866e-12 4.8326792e-05 -3.2578824e-10 -2.0810019e-07 -7.3309734e-12 1.6685377e-11 3.9903591e-14 9.1714102e-08 -2.2544733e-11 9.4144708e-11 -9.2931714e-12 5.3254879e-12
|
||||
-3.7606866e-12 4.8437596e-05 -3.5569049e-10 -2.080996e-07 -7.4780802e-12 1.6680934e-11 2.7466593e-13 8.5641003e-08 -2.425075e-11 7.7669196e-11 -2.2631547e-11 5.8077979e-13
|
||||
-3.4574887e-12 4.8541063e-05 -3.8545474e-10 -2.0809901e-07 -7.6093713e-12 1.6646067e-11 2.5876746e-14 7.997313e-08 -2.317586e-11 1.0544046e-10 -1.5314944e-11 6.8357155e-12
|
||||
-2.9114149e-12 4.8637681e-05 -4.1425452e-10 -2.0809838e-07 -7.7070087e-12 1.6659672e-11 6.2786281e-13 7.4677646e-08 -2.2436087e-11 8.9235324e-11 -1.3645085e-11 1.4694507e-11
|
||||
-2.2825362e-12 4.8727902e-05 -4.4462584e-10 -2.0809808e-07 -7.7463431e-12 1.6727387e-11 4.986996e-13 6.973271e-08 -2.3823592e-11 4.8349103e-11 -4.917953e-12 1.0180248e-11
|
||||
-1.6721448e-12 4.881215e-05 -4.7395477e-10 -2.080978e-07 -7.798864e-12 1.6781065e-11 5.8461703e-13 6.5116697e-08 -2.2923269e-11 3.3917578e-11 -1.4512356e-11 3.0753823e-12
|
||||
-1.0108835e-12 4.889082e-05 -5.0054848e-10 -2.0809742e-07 -7.8734886e-12 1.6821117e-11 5.5262937e-13 6.0804995e-08 -2.0048603e-11 6.7540691e-11 -9.5748309e-12 5.1419531e-12
|
||||
-5.2913704e-13 4.8964281e-05 -5.2361079e-10 -2.0809688e-07 -7.9342525e-12 1.6809498e-11 1.7857863e-13 5.6779412e-08 -1.7008275e-11 8.4873628e-11 -8.0821684e-12 -1.3432203e-11
|
||||
-6.0869323e-13 4.9032877e-05 -5.4391464e-10 -2.0809612e-07 -7.9700834e-12 1.6669189e-11 -2.2181063e-13 5.3018043e-08 -1.6188875e-11 1.2254388e-10 -3.4719243e-12 -2.5582696e-11
|
||||
5.3160987e-14 4.909693e-05 -5.685844e-10 -2.0809534e-07 -7.8445232e-12 1.6543112e-11 3.7931128e-13 4.9508006e-08 -2.3478774e-11 1.0539577e-10 3.8278786e-11 -1.7435743e-11
|
||||
6.9879599e-13 4.9156741e-05 -6.0029127e-10 -2.0809434e-07 -7.4710339e-12 1.6485438e-11 5.2135936e-13 4.6228138e-08 -2.7953013e-11 1.1306415e-10 3.9827585e-11 -4.0676347e-12
|
||||
1.3291032e-12 4.921259e-05 -6.3478917e-10 -2.0809343e-07 -7.1919325e-12 1.6475734e-11 8.0744289e-13 4.3164468e-08 -2.9352787e-11 1.9393928e-10 2.1395748e-11 -1.3540015e-11
|
||||
1.9099631e-12 4.9264739e-05 -6.713946e-10 -2.0809198e-07 -7.14109e-12 1.6362552e-11 5.0399245e-13 4.0306735e-08 -3.0085714e-11 2.4238628e-10 -1.2562062e-11 -3.1127285e-11
|
||||
2.5888559e-12 4.9313435e-05 -7.0699965e-10 -2.0809031e-07 -7.149238e-12 1.6227991e-11 5.2667785e-13 3.7637786e-08 -2.8432993e-11 2.6235217e-10 -2.232043e-12 -2.2764185e-11
|
||||
3.2694582e-12 4.9358908e-05 -7.414765e-10 -2.0808825e-07 -7.1300019e-12 1.6100817e-11 5.4583215e-13 3.5147252e-08 -2.5050106e-11 3.5891383e-10 3.6724193e-12 -1.8864321e-11
|
||||
3.3319364e-12 4.9401369e-05 -7.717209e-10 -2.0808576e-07 -7.1044853e-12 1.6070581e-11 -1.2307553e-12 3.2817485e-08 -1.9476032e-11 3.1425065e-10 2.5407039e-13 2.4318892e-12
|
||||
1.3098859e-12 4.9441018e-05 -7.9443484e-10 -2.0808358e-07 -7.0912957e-12 1.6079833e-11 -1.9382883e-12 3.0644803e-08 -1.7818422e-11 3.1668434e-10 -1.5502234e-12 -3.3879027e-12
|
||||
-9.4132416e-13 4.9478041e-05 -8.1438431e-10 -2.0808148e-07 -7.0899773e-12 1.6074809e-11 -1.1537277e-12 2.8614527e-08 -1.2295571e-11 2.623115e-10 -1.1222739e-12 6.3245613e-12
|
||||
-1.6613373e-12 4.9512612e-05 -8.2794953e-10 -2.0807969e-07 -7.0886692e-12 1.6035491e-11 -3.2150631e-13 2.6719935e-08 -1.0632544e-11 2.5483461e-10 -7.889241e-13 -4.5931115e-12
|
||||
-2.0923849e-12 4.9544894e-05 -8.4103126e-10 -2.080779e-07 -7.0787296e-12 1.598084e-11 -3.6458701e-13 2.4950759e-08 -1.0668225e-11 2.5363261e-10 2.557409e-12 -7.4330019e-12
|
||||
-2.6074079e-12 4.9575038e-05 -8.5484831e-10 -2.0807608e-07 -7.0458889e-12 1.5917995e-11 -4.6370161e-13 2.3298683e-08 -1.1706817e-11 2.5798545e-10 6.4493257e-12 -9.0570787e-12
|
||||
-3.1912867e-12 4.9603187e-05 -8.7103016e-10 -2.0807419e-07 -6.9729658e-12 1.5869196e-11 -5.4662034e-13 2.1756065e-08 -1.4183469e-11 2.6950321e-10 1.2401403e-11 -9.1121813e-12
|
||||
-2.6896504e-12 4.9629471e-05 -8.8354072e-10 -2.0807269e-07 -6.9518789e-12 1.5862597e-11 7.7697632e-13 2.0315473e-08 -9.1356461e-12 1.9455164e-10 -5.2929772e-13 -4.0871645e-12
|
||||
Loop time of 354.087 on 4 procs for 7500 steps with 320 atoms
|
||||
|
||||
Performance: 7320228141.222 ns/day, 0.000 hours/ns, 21.181 timesteps/s
|
||||
99.9% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.02245 | 0.024017 | 0.025793 | 0.9 | 0.01
|
||||
Neigh | 0.0043829 | 0.0046506 | 0.0049014 | 0.4 | 0.00
|
||||
Comm | 0.16337 | 0.1673 | 0.17244 | 0.9 | 0.05
|
||||
Output | 0.011278 | 0.016279 | 0.031255 | 6.8 | 0.00
|
||||
Modify | 353.57 | 353.58 | 353.6 | 0.1 | 99.86
|
||||
Other | | 0.2924 | | | 0.08
|
||||
|
||||
Nlocal: 80.0000 ave 86 max 74 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
Nghost: 122.750 ave 126 max 120 min
|
||||
Histogram: 1 0 0 1 0 1 0 0 0 1
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Neighbor list builds = 2
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 74.234376
|
||||
LB update time: 137.610462
|
||||
LB PCalc time: 90.368082
|
||||
LB fluidForce time: 30.518506
|
||||
LB CorrectU time: 20.319747
|
||||
Total wall time: 0:05:54
|
||||
139
examples/PACKAGES/latboltz/planewall/planewall_fixed.out
Normal file
139
examples/PACKAGES/latboltz/planewall/planewall_fixed.out
Normal file
@ -0,0 +1,139 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (-120.00000 -120.00000 -120.00000) to (120.00000 120.00000 120.00000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
320 atoms
|
||||
read_data CPU = 0.010 seconds
|
||||
320 atoms in group sphere1
|
||||
Using a lattice-Boltzmann grid of 60 by 60 by 61 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
1 rigid bodies with 320 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.45
|
||||
ghost atom cutoff = 10
|
||||
binsize = 1.725, bins = 140 140 140
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : micro
|
||||
Current step : 0
|
||||
Time step : 4
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.426 | 8.426 | 8.426 Mbytes
|
||||
v_vx v_vy v_vz v_omegax v_omegay v_omegaz v_fx v_fy v_fz v_tx v_ty v_tz
|
||||
0 0 0 0 0 0 0 0 0 0 0 0
|
||||
0 0 0 0 0 0 4.239889e-13 8.8817291e-07 -2.8255287e-11 -8.3760967e-06 -3.4292821e-11 1.4413627e-09
|
||||
0 0 0 0 0 0 1.4315002e-10 4.8664591e-05 -3.7829664e-10 -0.00030396599 -1.5178649e-09 5.8286332e-08
|
||||
0 0 0 0 0 0 7.4346125e-10 0.00021263259 1.4837899e-09 -0.00099915016 -5.4814944e-09 2.0970524e-07
|
||||
0 0 0 0 0 0 1.6937683e-09 0.00046298302 6.9867552e-09 -0.0017633394 -1.0234552e-08 3.9564168e-07
|
||||
0 0 0 0 0 0 2.7893371e-09 0.00075233887 1.512364e-08 -0.002430003 -1.4664452e-08 5.7543419e-07
|
||||
0 0 0 0 0 0 3.9059765e-09 0.0010508836 2.473915e-08 -0.0029656977 -1.843702e-08 7.3546258e-07
|
||||
0 0 0 0 0 0 4.9837024e-09 0.0013431931 3.5023862e-08 -0.0033824332 -2.154284e-08 8.7378862e-07
|
||||
0 0 0 0 0 0 5.9972036e-09 0.0016220459 4.5458108e-08 -0.0037022957 -2.4071195e-08 9.9238011e-07
|
||||
0 0 0 0 0 0 6.9382202e-09 0.0018845001 5.571997e-08 -0.0039464067 -2.6127149e-08 1.0941409e-06
|
||||
0 0 0 0 0 0 7.8064955e-09 0.0021297688 6.5611103e-08 -0.0041322536 -2.7805365e-08 1.1818894e-06
|
||||
0 0 0 0 0 0 8.6053202e-09 0.0023581155 7.5022305e-08 -0.0042735978 -2.9184146e-08 1.2580602e-06
|
||||
0 0 0 0 0 0 9.3393725e-09 0.0025702889 8.3893991e-08 -0.0043810513 -3.0326009e-08 1.3246619e-06
|
||||
0 0 0 0 0 0 1.001368e-08 0.0027672363 9.2208859e-08 -0.0044627274 -3.128007e-08 1.3833192e-06
|
||||
0 0 0 0 0 0 1.0633157e-08 0.0029499614 9.9966263e-08 -0.0045248072 -3.2084685e-08 1.4353358e-06
|
||||
0 0 0 0 0 0 1.1202408e-08 0.003119455 1.0718596e-07 -0.0045719925 -3.2769709e-08 1.4817567e-06
|
||||
0 0 0 0 0 0 1.1725673e-08 0.0032766636 1.1388989e-07 -0.0046078577 -3.335838e-08 1.5234208e-06
|
||||
0 0 0 0 0 0 1.2206811e-08 0.0034224769 1.2010982e-07 -0.0046351195 -3.3868829e-08 1.5610047e-06
|
||||
0 0 0 0 0 0 1.2649333e-08 0.0035577241 1.2587419e-07 -0.0046558425 -3.4315213e-08 1.5950578e-06
|
||||
0 0 0 0 0 0 1.3056425e-08 0.0036831753 1.31216e-07 -0.0046715955 -3.4708664e-08 1.6260295e-06
|
||||
0 0 0 0 0 0 1.3430996e-08 0.0037995442 1.3616361e-07 -0.0046835712 -3.505795e-08 1.6542904e-06
|
||||
0 0 0 0 0 0 1.3775686e-08 0.0039074918 1.407471e-07 -0.0046926757 -3.5370035e-08 1.6801491e-06
|
||||
0 0 0 0 0 0 1.4092912e-08 0.0040076304 1.4499244e-07 -0.0046995979 -3.5650478e-08 1.7038651e-06
|
||||
0 0 0 0 0 0 1.4384883e-08 0.0041005268 1.4892558e-07 -0.0047048612 -3.5903729e-08 1.7256585e-06
|
||||
0 0 0 0 0 0 1.4653619e-08 0.0041867065 1.5256951e-07 -0.0047088634 -3.6133445e-08 1.745718e-06
|
||||
0 0 0 0 0 0 1.490098e-08 0.0042666563 1.5594609e-07 -0.0047119071 -3.6342564e-08 1.7642066e-06
|
||||
0 0 0 0 0 0 1.5128662e-08 0.0043408273 1.5907544e-07 -0.0047142221 -3.6533538e-08 1.7812667e-06
|
||||
0 0 0 0 0 0 1.5338233e-08 0.0044096378 1.6197577e-07 -0.0047159831 -3.670842e-08 1.7970233e-06
|
||||
0 0 0 0 0 0 1.5531126e-08 0.0044734757 1.646646e-07 -0.0047173229 -3.6868911e-08 1.8115874e-06
|
||||
0 0 0 0 0 0 1.5708666e-08 0.0045327006 1.6715708e-07 -0.0047183425 -3.7016486e-08 1.8250577e-06
|
||||
0 0 0 0 0 0 1.5872071e-08 0.0045876461 1.6946841e-07 -0.0047191186 -3.7152397e-08 1.8375231e-06
|
||||
0 0 0 0 0 0 1.6022457e-08 0.0046386215 1.7161128e-07 -0.0047197095 -3.7277723e-08 1.8490635e-06
|
||||
0 0 0 0 0 0 1.6160856e-08 0.0046859138 1.7359882e-07 -0.0047201596 -3.7393419e-08 1.8597512e-06
|
||||
0 0 0 0 0 0 1.6288218e-08 0.0047297892 1.7544172e-07 -0.0047205027 -3.7500311e-08 1.8696524e-06
|
||||
0 0 0 0 0 0 1.6405415e-08 0.0047704946 1.7715127e-07 -0.0047207642 -3.7599158e-08 1.8788269e-06
|
||||
0 0 0 0 0 0 1.6513252e-08 0.0048082591 1.7873657e-07 -0.0047209638 -3.7690613e-08 1.8873299e-06
|
||||
0 0 0 0 0 0 1.6612471e-08 0.0048432952 1.802073e-07 -0.0047211162 -3.7775283e-08 1.8952118e-06
|
||||
0 0 0 0 0 0 1.6703756e-08 0.0048758 1.8157127e-07 -0.0047212327 -3.7853677e-08 1.9025188e-06
|
||||
0 0 0 0 0 0 1.6787736e-08 0.0049059565 1.8283671e-07 -0.0047213218 -3.7926309e-08 1.9092938e-06
|
||||
0 0 0 0 0 0 1.6864987e-08 0.0049339342 1.8401041e-07 -0.0047213902 -3.7993601e-08 1.9155759e-06
|
||||
0 0 0 0 0 0 1.6936047e-08 0.0049598906 1.8509932e-07 -0.0047214426 -3.8055984e-08 1.9214015e-06
|
||||
0 0 0 0 0 0 1.7001408e-08 0.0049839718 1.8610939e-07 -0.004721483 -3.8113818e-08 1.926804e-06
|
||||
0 0 0 0 0 0 1.706152e-08 0.0050063132 1.8704646e-07 -0.0047215141 -3.8167432e-08 1.9318145e-06
|
||||
0 0 0 0 0 0 1.7116801e-08 0.0050270405 1.8791576e-07 -0.0047215382 -3.8217147e-08 1.9364615e-06
|
||||
0 0 0 0 0 0 1.7167636e-08 0.0050462704 1.8872221e-07 -0.0047215569 -3.8263258e-08 1.9407716e-06
|
||||
0 0 0 0 0 0 1.7214381e-08 0.005064111 1.8947039e-07 -0.0047215715 -3.8306026e-08 1.9447693e-06
|
||||
0 0 0 0 0 0 1.7257357e-08 0.0050806626 1.9016445e-07 -0.0047215829 -3.8345683e-08 1.9484773e-06
|
||||
0 0 0 0 0 0 1.7296867e-08 0.0050960185 1.9080841e-07 -0.0047215918 -3.8382478e-08 1.9519167e-06
|
||||
0 0 0 0 0 0 1.7333189e-08 0.005110265 1.9140576e-07 -0.0047215989 -3.8416608e-08 1.955107e-06
|
||||
0 0 0 0 0 0 1.7366574e-08 0.0051234822 1.9196003e-07 -0.0047216046 -3.8448262e-08 1.9580663e-06
|
||||
0 0 0 0 0 0 1.7397262e-08 0.0051357445 1.9247416e-07 -0.0047216092 -3.8477636e-08 1.9608112e-06
|
||||
0 0 0 0 0 0 1.7425463e-08 0.005147121 1.9295122e-07 -0.0047216128 -3.8504879e-08 1.9633575e-06
|
||||
0 0 0 0 0 0 1.745138e-08 0.0051576755 1.9339373e-07 -0.0047216159 -3.8530161e-08 1.9657193e-06
|
||||
0 0 0 0 0 0 1.7475194e-08 0.0051674675 1.9380435e-07 -0.0047216184 -3.8553607e-08 1.9679102e-06
|
||||
0 0 0 0 0 0 1.7497073e-08 0.0051765521 1.9418523e-07 -0.0047216204 -3.8575366e-08 1.9699425e-06
|
||||
0 0 0 0 0 0 1.7517174e-08 0.0051849803 1.9453865e-07 -0.0047216222 -3.8595551e-08 1.9718277e-06
|
||||
0 0 0 0 0 0 1.753564e-08 0.0051927997 1.9486648e-07 -0.0047216237 -3.8614279e-08 1.9735764e-06
|
||||
0 0 0 0 0 0 1.7552601e-08 0.0052000541 1.9517068e-07 -0.0047216249 -3.8631647e-08 1.9751986e-06
|
||||
0 0 0 0 0 0 1.7568178e-08 0.0052067844 1.9545286e-07 -0.004721626 -3.864777e-08 1.9767033e-06
|
||||
0 0 0 0 0 0 1.7582482e-08 0.0052130285 1.9571468e-07 -0.004721627 -3.8662724e-08 1.9780991e-06
|
||||
0 0 0 0 0 0 1.7595618e-08 0.0052188215 1.9595756e-07 -0.0047216278 -3.8676592e-08 1.9793939e-06
|
||||
0 0 0 0 0 0 1.7607679e-08 0.005224196 1.9618291e-07 -0.0047216286 -3.8689479e-08 1.980595e-06
|
||||
0 0 0 0 0 0 1.761875e-08 0.0052291822 1.9639198e-07 -0.0047216293 -3.8701417e-08 1.9817091e-06
|
||||
0 0 0 0 0 0 1.7628913e-08 0.0052338081 1.9658594e-07 -0.0047216299 -3.87125e-08 1.9827426e-06
|
||||
0 0 0 0 0 0 1.7638241e-08 0.0052380998 1.9676589e-07 -0.0047216304 -3.8722782e-08 1.9837013e-06
|
||||
0 0 0 0 0 0 1.7646803e-08 0.0052420815 1.9693283e-07 -0.0047216309 -3.8732329e-08 1.9845906e-06
|
||||
0 0 0 0 0 0 1.7654657e-08 0.0052457755 1.9708773e-07 -0.0047216313 -3.8741169e-08 1.9854156e-06
|
||||
0 0 0 0 0 0 1.7661865e-08 0.0052492027 1.9723142e-07 -0.0047216317 -3.8749387e-08 1.9861808e-06
|
||||
0 0 0 0 0 0 1.7668477e-08 0.0052523822 1.9736474e-07 -0.0047216321 -3.8756997e-08 1.9868906e-06
|
||||
0 0 0 0 0 0 1.7674543e-08 0.0052553321 1.9748842e-07 -0.0047216325 -3.8764064e-08 1.9875491e-06
|
||||
0 0 0 0 0 0 1.7680105e-08 0.0052580688 1.9760317e-07 -0.0047216328 -3.8770626e-08 1.9881599e-06
|
||||
0 0 0 0 0 0 1.7685205e-08 0.0052606078 1.9770962e-07 -0.0047216331 -3.877671e-08 1.9887264e-06
|
||||
0 0 0 0 0 0 1.7689882e-08 0.0052629634 1.978084e-07 -0.0047216333 -3.8782352e-08 1.989252e-06
|
||||
0 0 0 0 0 0 1.769417e-08 0.0052651488 1.9790002e-07 -0.0047216336 -3.8787592e-08 1.9897395e-06
|
||||
0 0 0 0 0 0 1.7698101e-08 0.0052671763 1.9798504e-07 -0.0047216338 -3.8792458e-08 1.9901918e-06
|
||||
0 0 0 0 0 0 1.7701702e-08 0.0052690573 1.9806391e-07 -0.004721634 -3.8796971e-08 1.9906113e-06
|
||||
Loop time of 348.316 on 4 procs for 7500 steps with 320 atoms
|
||||
|
||||
Performance: 7441508527.485 ns/day, 0.000 hours/ns, 21.532 timesteps/s
|
||||
100.0% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.022385 | 0.02409 | 0.026109 | 0.9 | 0.01
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.14613 | 0.14777 | 0.14918 | 0.3 | 0.04
|
||||
Output | 0.010513 | 0.015329 | 0.02974 | 6.7 | 0.00
|
||||
Modify | 347.82 | 347.85 | 347.86 | 0.1 | 99.87
|
||||
Other | | 0.2818 | | | 0.08
|
||||
|
||||
Nlocal: 80.0000 ave 82 max 78 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 122.500 ave 124 max 121 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 72.754071
|
||||
LB update time: 135.699228
|
||||
LB PCalc time: 88.586456
|
||||
LB fluidForce time: 30.088636
|
||||
LB CorrectU time: 20.191920
|
||||
Total wall time: 0:05:48
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,105 +0,0 @@
|
||||
#===========================================================================#
|
||||
# polymer test #
|
||||
# #
|
||||
# Run consists of a lone 32-bead coarse-grained polymer #
|
||||
# undergoing Brownian motion in thermal lattice-Boltzmann fluid. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the monomer-fluid interaction #
|
||||
# force) is set by the user (gamma = 0.03 for this simulation...this #
|
||||
# value has been calibrated a priori through simulations of the drag #
|
||||
# force acting on a single particle of the same radius). #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'dump.polymer.lammpstrj' #
|
||||
# and viewed using, e.g., the VMD software. #
|
||||
# #
|
||||
# Santtu Ollila #
|
||||
# santtu.ollila@aalto.fi #
|
||||
# Aalto University #
|
||||
# August 14, 2013 #
|
||||
#===========================================================================#
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style hybrid molecular
|
||||
special_bonds fene
|
||||
read_data data.polymer
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude type 2 2
|
||||
neigh_modify exclude type 2 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# each monomer (use a truncated and shifted Lennard-Jones potential).
|
||||
#----------------------------------------------------------------------------
|
||||
bond_style fene
|
||||
bond_coeff 1 60.0 2.25 4.14195 1.5
|
||||
pair_style lj/cut 1.68369
|
||||
pair_coeff 1 1 4.14195 1.5 1.68369
|
||||
pair_coeff 1 2 4.14195 1.5 1.68369
|
||||
pair_coeff 2 2 0 1.0
|
||||
|
||||
mass * 0.000000771064
|
||||
timestep 0.00003
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# ForceAtoms are the particles at the center of each monomer which
|
||||
# do not interact with the fluid, but are used to implement the hard-sphere
|
||||
# interactions.
|
||||
# FluidAtoms are the particles representing the surface of the monomer
|
||||
# which do interact with the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
group ForceAtoms type 1
|
||||
group FluidAtoms type 2
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles. This is accomplished through the use of the rigid_pc_sphere
|
||||
# fix).
|
||||
# Use the LB integration scheme of Ollila et. al. (for stability reasons,
|
||||
# this integration scheme should be used when a large user set value for
|
||||
# gamma is specified), a fluid viscosity = 0.023333333,
|
||||
# fluid density= 0.0000166368,
|
||||
# value for gamma=0.03, lattice spacing dx=1.0, and mass unit, dm=0.0000166368.
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=15003). This enables the particles to undergo Brownian motion in
|
||||
# the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 5 1 0.023333333 0.0000166368 setGamma 0.03 dx 1.0 dm 0.0000166368 noise 300.0 15003
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining them to move and rotate together as a single rigid
|
||||
# spherical object.
|
||||
# Since both the ForceAtoms (central atoms), and the FluidAtoms (spherical
|
||||
# shell) should move and rotate together, this fix is applied to all of
|
||||
# the atoms in the system. However, since the central atoms should not
|
||||
# feel a force due to the fluid, they are excluded from the force
|
||||
# calculation through the use of the 'innerNodes' keyword.
|
||||
# NOTE: This fix should only be used when the user specifies a value for
|
||||
# gamma (through the setGamma keyword) in the lb_fluid fix.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 all lb/rigid/pc/sphere molecule innerNodes ForceAtoms
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# To ensure that numerical errors do not lead to a buildup of momentum in the
|
||||
# system, the momentum_lb fix is used every 10000 timesteps to zero out the
|
||||
# total (particle plus fluid) momentum in the system.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 3 all lb/momentum 10000 linear 1 1 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Write position and velocity coordinates into a file every 2000 time steps.
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
dump 1 ForceAtoms custom 2000 dump.polymer_setgamma.lammpstrj id x y z vx vy vz
|
||||
run 2000001
|
||||
@ -1,83 +0,0 @@
|
||||
LAMMPS (10 Aug 2015)
|
||||
Reading data file ...
|
||||
orthogonal box = (0 0 0) to (40 40 40)
|
||||
2 by 2 by 4 MPI processor grid
|
||||
reading atoms ...
|
||||
992 atoms
|
||||
scanning bonds ...
|
||||
1 = max bonds/atom
|
||||
reading bonds ...
|
||||
31 bonds
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
Special bond factors lj: 0 1 1
|
||||
Special bond factors coul: 0 1 1
|
||||
2 = max # of 1-2 neighbors
|
||||
2 = max # of special neighbors
|
||||
32 atoms in group ForceAtoms
|
||||
960 atoms in group FluidAtoms
|
||||
Using a lattice-Boltzmann grid of 40 by 40 by 40 total grid points. (../fix_lb_fluid.cpp:385)
|
||||
32 rigid bodies with 992 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 2.18369
|
||||
ghost atom cutoff = 2.18369
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step: 0
|
||||
Time step : 3e-05
|
||||
Memory usage per processor = 0.111926 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 -8.2758489 2790.7741 2782.4982 1.9081958e-20
|
||||
2000001 4.3017148 0 2792.6037 2798.2163 -0.00077006865
|
||||
Loop time of 51900 on 16 procs for 2000001 steps with 992 atoms
|
||||
|
||||
Pair time (%) = 4.33729 (0.00835701)
|
||||
Bond time (%) = 3.33134 (0.00641876)
|
||||
Neigh time (%) = 35.1247 (0.0676777)
|
||||
Comm time (%) = 61.528 (0.118551)
|
||||
Outpt time (%) = 0.361813 (0.000697135)
|
||||
Other time (%) = 51795.3 (99.7983)
|
||||
|
||||
Nlocal: 62 ave 465 max 0 min
|
||||
Histogram: 11 0 3 1 0 0 0 0 0 1
|
||||
Nghost: 94.8125 ave 340 max 0 min
|
||||
Histogram: 9 0 0 0 4 0 0 1 0 2
|
||||
Neighs: 0.25 ave 2 max 0 min
|
||||
Histogram: 13 0 0 0 0 2 0 0 0 1
|
||||
|
||||
Total # of neighbors = 4
|
||||
Ave neighs/atom = 0.00403226
|
||||
Ave special neighs/atom = 0.0625
|
||||
Neighbor list builds = 23853
|
||||
Dangerous builds = 0
|
||||
|
||||
------------------------------------------------------------
|
||||
Sender: LSF System <lsfadmin@lsfhost.localdomain>
|
||||
Subject: Job 883849: </opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer_default_gamma> Done
|
||||
|
||||
Job </opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer_default_gamma> was submitted from host <req770> by user <colin>.
|
||||
Job was executed on host(s) <16*lsfhost.localdomain>, in queue <mpi>, as user <colin>.
|
||||
</home/colin> was used as the home directory.
|
||||
</home/colin/lammps-10Aug15/examples/USER/lb/tested/polymer_default> was used as the working directory.
|
||||
Started at Mon Aug 24 11:13:12 2015
|
||||
Results reported at Tue Aug 25 01:38:50 2015
|
||||
|
||||
Your job looked like:
|
||||
|
||||
------------------------------------------------------------
|
||||
# LSBATCH: User input
|
||||
/opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer_default_gamma
|
||||
------------------------------------------------------------
|
||||
|
||||
Successfully completed.
|
||||
|
||||
Resource usage summary:
|
||||
|
||||
CPU time : 829343.88 sec.
|
||||
Max Memory : 43 MB
|
||||
Max Swap : 805 MB
|
||||
|
||||
|
||||
The output (if any) is above this job summary.
|
||||
|
||||
@ -1,83 +0,0 @@
|
||||
LAMMPS (10 Aug 2015)
|
||||
Reading data file ...
|
||||
orthogonal box = (0 0 0) to (40 40 40)
|
||||
2 by 2 by 4 MPI processor grid
|
||||
reading atoms ...
|
||||
992 atoms
|
||||
scanning bonds ...
|
||||
1 = max bonds/atom
|
||||
reading bonds ...
|
||||
31 bonds
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
Special bond factors lj: 0 1 1
|
||||
Special bond factors coul: 0 1 1
|
||||
2 = max # of 1-2 neighbors
|
||||
2 = max # of special neighbors
|
||||
32 atoms in group ForceAtoms
|
||||
960 atoms in group FluidAtoms
|
||||
Using a lattice-Boltzmann grid of 40 by 40 by 40 total grid points. (../fix_lb_fluid.cpp:385)
|
||||
32 rigid bodies with 992 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 2.18369
|
||||
ghost atom cutoff = 2.18369
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step: 0
|
||||
Time step : 3e-05
|
||||
Memory usage per processor = 0.108554 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 -8.2758489 2790.7741 2782.4982 -0.00085093693
|
||||
2000001 0.5548925 0 2792.3403 2803.7286 -0.0037777326
|
||||
Loop time of 50862.3 on 16 procs for 2000001 steps with 992 atoms
|
||||
|
||||
Pair time (%) = 4.10128 (0.0080635)
|
||||
Bond time (%) = 3.29621 (0.00648066)
|
||||
Neigh time (%) = 40.0195 (0.0786822)
|
||||
Comm time (%) = 89.3201 (0.175612)
|
||||
Outpt time (%) = 1.05399 (0.00207224)
|
||||
Other time (%) = 50724.5 (99.7291)
|
||||
|
||||
Nlocal: 62 ave 501 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 29 ave 259 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 1 0 1
|
||||
Neighs: 0.375 ave 3 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 6
|
||||
Ave neighs/atom = 0.00604839
|
||||
Ave special neighs/atom = 0.0625
|
||||
Neighbor list builds = 30671
|
||||
Dangerous builds = 0
|
||||
|
||||
------------------------------------------------------------
|
||||
Sender: LSF System <lsfadmin@lsfhost.localdomain>
|
||||
Subject: Job 883848: </opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer> Done
|
||||
|
||||
Job </opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer> was submitted from host <req770> by user <colin>.
|
||||
Job was executed on host(s) <16*lsfhost.localdomain>, in queue <mpi>, as user <colin>.
|
||||
</home/colin> was used as the home directory.
|
||||
</home/colin/lammps-10Aug15/examples/USER/lb/tested/polymer> was used as the working directory.
|
||||
Started at Mon Aug 24 11:12:37 2015
|
||||
Results reported at Tue Aug 25 01:20:46 2015
|
||||
|
||||
Your job looked like:
|
||||
|
||||
------------------------------------------------------------
|
||||
# LSBATCH: User input
|
||||
/opt/hpmpi/bin/mpirun -srun ./lmp_mpi -in in.polymer
|
||||
------------------------------------------------------------
|
||||
|
||||
Successfully completed.
|
||||
|
||||
Resource usage summary:
|
||||
|
||||
CPU time : 812767.44 sec.
|
||||
Max Memory : 44 MB
|
||||
Max Swap : 812 MB
|
||||
|
||||
|
||||
The output (if any) is above this job summary.
|
||||
|
||||
@ -4,11 +4,10 @@
|
||||
# Run consists of a lone 32-bead coarse-grained polymer #
|
||||
# undergoing Brownian motion in thermal lattice-Boltzmann fluid. #
|
||||
# #
|
||||
# Here, gamma (used in the calculation of the monomer-fluid interaction #
|
||||
# force) is set by the user (gamma = 0.03 for this simulation...this #
|
||||
# value has been calibrated a priori through simulations of the drag #
|
||||
# force acting on a single particle of the same radius). #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# To run this example, LAMMPS needs to be compiled with a the following #
|
||||
# packages: MOLECULE, RIGID, LATBOTLZ #
|
||||
# #
|
||||
# Sample output from this run can be found in the file: #
|
||||
# 'dump.polymer.lammpstrj' #
|
||||
# and viewed using, e.g., the VMD software. #
|
||||
# #
|
||||
@ -16,23 +15,26 @@
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p p
|
||||
boundary p p f
|
||||
atom_style hybrid molecular
|
||||
special_bonds fene
|
||||
read_data data.polymer
|
||||
read_data polymer.data
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
#----------------------------------------------------------------------------
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The communcation cutoff is set to 2.5 dx to ensure that all particles in the
|
||||
# processor ghost fluid region (of width 2dx) are known to local processor.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude type 2 2
|
||||
neigh_modify exclude type 2 1
|
||||
comm_modify cutoff 2.5
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# each monomer (use a truncated and shifted Lennard-Jones potential).
|
||||
#----------------------------------------------------------------------------
|
||||
bond_style fene
|
||||
@ -42,66 +44,68 @@ pair_coeff 1 1 4.14195 1.5 1.68369
|
||||
pair_coeff 1 2 4.14195 1.5 1.68369
|
||||
pair_coeff 2 2 0 1.0
|
||||
|
||||
mass * 0.000000771064
|
||||
timestep 0.00003
|
||||
# The mass is set 4/3 PI r^3 fluid_density/31 , where r=0.617, 31 is number of
|
||||
# nodes in a single monomer
|
||||
mass * 0.00000318
|
||||
timestep 0.0001
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# ForceAtoms are the particles at the center of each monomer which
|
||||
# ForceAtoms are the particles at the center of each monomer which
|
||||
# do not interact with the fluid, but are used to implement the hard-sphere
|
||||
# interactions.
|
||||
# interactions.
|
||||
# FluidAtoms are the particles representing the surface of the monomer
|
||||
# which do interact with the fluid. Monomer surface is shell of radius 0.7
|
||||
# which do interact with the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
group ForceAtoms type 1
|
||||
group FluidAtoms type 2
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Placement of a trap (similar to an 1D optical trap) for the polymer
|
||||
# Note that the addforce fix needs to go before the lb/fluid and lb/viscous
|
||||
# fix as these fixes rescale the forces to account for the added mass of the
|
||||
# fluid that gets dragged around with the particle so need prior knowledge of
|
||||
# all forces applied to the particles involved in these fixes before they are
|
||||
# called.
|
||||
#----------------------------------------------------------------------------
|
||||
variable fx atom -(x-20.0)*20.0/31.0
|
||||
fix trap all addforce v_fx 0.0 0.0 # call before fix lb/fluid and lb/viscous
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicitly apply a force back on to these
|
||||
# particles. This is accomplished through the use of the lb/viscous
|
||||
# fix).
|
||||
# Uses the standard LB integration scheme, fluid viscosity = 0.023333333,
|
||||
# fluid density= 0.0000166368, lattice spacing dx=1.0, and mass unit,
|
||||
# dm=0.0000166368.
|
||||
# Use the default method to calculate the interaction force between the
|
||||
# particles and the fluid. This calculation requires the surface area
|
||||
# of the composite object represented by each particle node. By default
|
||||
# this area is assumed equal to dx*dx; however, since this is not the case
|
||||
# here, it is input through the setArea keyword (i.e. particles of type 2
|
||||
# correspond to a surface area of 0.2025=4 Pi R^2/N ).
|
||||
# Use the trilinear interpolation stencil to distribute the force from
|
||||
# a given particle onto the fluid mesh (results in a smaller hydrodynamic
|
||||
# radius than if the Peskin stencil is used).
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=15003). This enables the particles to undergo Brownian motion in
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicity apply a force back on to these
|
||||
# particles. This is accomplished through the use of the lb/viscous fix).
|
||||
# We set fluid viscosity = 0.1 and fluid density = 0.00009982071 which
|
||||
# means the kinematic viscosity is idential to that of water but the
|
||||
# dynamic viscosity is a factor of 10 less than that of water which
|
||||
# increases the diffusive dynamics by a corresponding factor of 10.
|
||||
# lattice spacing dx=1.0.
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=15003). This enables the particles to undergo Brownian motion in
|
||||
# the fluid.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 3 1 0.023333333 0.0000166368 setArea 2 0.20525 dx 1.0 dm 0.0000166368 noise 300.0 15003
|
||||
fix 1 all lb/fluid 1 0.1 0.00009982071 dx 1.0 noise 300.0 15003
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining them to move and rotate together as a single rigid
|
||||
# spherical object.
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining each monomerto move and rotate as a single rigid
|
||||
# spherical object.
|
||||
# Since both the ForceAtoms (central atoms), and the FluidAtoms (spherical
|
||||
# shell) should move and rotate together, this fix is applied to all of
|
||||
# the atoms in the system. However, since the central atoms should not
|
||||
# feel a force due to the fluid, they are excluded from the fluid force
|
||||
# calculation.
|
||||
# shell) should move and rotate together, this fix is applied to all of
|
||||
# the atoms in the system.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 2 FluidAtoms lb/viscous
|
||||
fix 3 all rigid molecule
|
||||
fix 2 all lb/viscous
|
||||
fix 3 all rigid/small molecule
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# To ensure that numerical errors do not lead to a buildup of momentum in the
|
||||
# system, the momentum_lb fix is used every 10000 timesteps to zero out the
|
||||
# system, the momentum_lb fix is used every 100000 timesteps to zero out the
|
||||
# total (particle plus fluid) momentum in the system.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 4 all lb/momentum 10000 linear 1 1 1
|
||||
fix 4 all lb/momentum 100000 linear 1 1 1
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Write position and velocity coordinates into a file every 2000 time steps.
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
dump 1 ForceAtoms custom 2000 dump.polymer_default_gamma.lammpstrj id x y z vx vy vz
|
||||
run 2000001
|
||||
dump 1 ForceAtoms custom 10 trapped_polymer.lammpstrj id x y z vx vy vz
|
||||
|
||||
#run 2000001
|
||||
run 10000
|
||||
41041
examples/PACKAGES/latboltz/polymer/trapped_polymer.lammpstrj
Normal file
41041
examples/PACKAGES/latboltz/polymer/trapped_polymer.lammpstrj
Normal file
File diff suppressed because it is too large
Load Diff
81
examples/PACKAGES/latboltz/polymer/trapped_polymer.out
Normal file
81
examples/PACKAGES/latboltz/polymer/trapped_polymer.out
Normal file
@ -0,0 +1,81 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (40.000000 40.000000 40.000000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
992 atoms
|
||||
scanning bonds ...
|
||||
1 = max bonds/atom
|
||||
reading bonds ...
|
||||
31 bonds
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
special bond factors lj: 0 1 1
|
||||
special bond factors coul: 0 1 1
|
||||
2 = max # of 1-2 neighbors
|
||||
2 = max # of special neighbors
|
||||
special bonds CPU = 0.000 seconds
|
||||
read_data CPU = 0.027 seconds
|
||||
32 atoms in group ForceAtoms
|
||||
960 atoms in group FluidAtoms
|
||||
Using a lattice-Boltzmann grid of 40 by 40 by 41 total grid points. (../fix_lb_fluid.cpp:475)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1021)
|
||||
First Run initialized
|
||||
create bodies CPU = 0.000 seconds
|
||||
32 rigid bodies with 992 atoms
|
||||
0.70010803 = max distance from body owner to body atom
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.18369
|
||||
ghost atom cutoff = 2.5
|
||||
binsize = 1.091845, bins = 37 37 37
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 0.0001
|
||||
WARNING: Communication cutoff 2.5 is shorter than a bond length based estimate of 2.6825. This may lead to errors. (../comm.cpp:730)
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.114 | 10.07 | 12.65 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 -8.2758489 2790.7741 2782.4982 0.85835765
|
||||
10000 15.559756 -10.240592 2817.6714 2827.7319 -0.0015697449
|
||||
Loop time of 217.363 on 4 procs for 10000 steps with 992 atoms
|
||||
|
||||
Performance: 397.491 ns/day, 0.060 hours/ns, 46.006 timesteps/s
|
||||
99.8% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.013036 | 0.048243 | 0.13073 | 22.1 | 0.02
|
||||
Bond | 0.0098736 | 0.02098 | 0.040036 | 8.4 | 0.01
|
||||
Neigh | 0.4698 | 0.4764 | 0.48073 | 0.7 | 0.22
|
||||
Comm | 0.085369 | 0.27273 | 0.51085 | 36.0 | 0.13
|
||||
Output | 0.13148 | 0.36286 | 1.0297 | 63.9 | 0.17
|
||||
Modify | 215.41 | 215.91 | 216.3 | 2.2 | 99.33
|
||||
Other | | 0.2725 | | | 0.13
|
||||
|
||||
Nlocal: 248.000 ave 802 max 0 min
|
||||
Histogram: 2 0 1 0 0 0 0 0 0 1
|
||||
Nghost: 113.250 ave 190 max 42 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 4.25000 ave 15 max 0 min
|
||||
Histogram: 2 1 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 17
|
||||
Ave neighs/atom = 0.017137097
|
||||
Ave special neighs/atom = 0.062500000
|
||||
Neighbor list builds = 495
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 94.576600
|
||||
LB update time: 66.882962
|
||||
LB PCalc time: 33.159861
|
||||
LB fluidForce time: 11.576858
|
||||
LB CorrectU time: 8.640308
|
||||
Total wall time: 0:03:37
|
||||
491
examples/PACKAGES/latboltz/toycar/toycar.in
Normal file
491
examples/PACKAGES/latboltz/toycar/toycar.in
Normal file
@ -0,0 +1,491 @@
|
||||
units cgs
|
||||
dimension 3
|
||||
boundary p p f
|
||||
atom_style atomic
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Set up the simulation box
|
||||
#-------------------------------------------------------------------------#
|
||||
variable dx equal 1.5
|
||||
|
||||
variable more equal 6.5
|
||||
|
||||
variable xl equal "-32*v_dx"
|
||||
variable xh equal "32*v_dx"
|
||||
variable yl equal "-60*v_dx"
|
||||
variable yh equal "420*v_dx"
|
||||
variable zl equal "-6*v_dx"
|
||||
variable zh equal "58*v_dx"
|
||||
|
||||
region mybox block ${xl} ${xh} ${yl} ${yh} ${zl} ${zh}
|
||||
create_box 14 mybox
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the regions and filling them with atoms assigned to surge_group
|
||||
#-------------------------------------------------------------------------#
|
||||
variable density equal 0.001184
|
||||
|
||||
variable sigma equal "1.2*v_dx" #"1.2*v_dx"
|
||||
variable rcutlj equal "v_sigma*2^(1/6)"
|
||||
variable rcutlj93 equal "v_sigma*(2/5)^(1/6)"
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the cylinder
|
||||
#-------------------------------------------------------------------------#
|
||||
variable c1 equal 12.5
|
||||
variable c2 equal -1.5
|
||||
variable radius equal 6.0
|
||||
variable lo equal 9.5
|
||||
variable hi equal 12.5
|
||||
|
||||
region mycylinderinside1 cylinder x ${c1} ${c2} ${radius} ${lo} ${hi}
|
||||
|
||||
variable n_nodes_Cy_1 equal "round(v_more*0.28*((2*PI*v_radius*(v_hi-v_lo))+(2*PI*(v_radius)^2)))"
|
||||
create_atoms 1 random ${n_nodes_Cy_1} 1234 mycylinderinside1 units box
|
||||
|
||||
variable radius_2 equal "v_radius + v_rcutlj93"
|
||||
variable hi_2 equal "v_hi + 2*v_rcutlj93"
|
||||
variable lo_2 equal "v_lo - v_rcutlj93"
|
||||
region mycylinder1 cylinder x ${c1} ${c2} ${radius_2} ${lo_2} ${hi_2}
|
||||
group gcylinder1 region mycylinder1
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the cylinder
|
||||
#-------------------------------------------------------------------------#
|
||||
variable c1 equal -9.0
|
||||
variable c2 equal -1.5
|
||||
variable radius equal 6.0
|
||||
variable lo equal 9.5
|
||||
variable hi equal 12.5
|
||||
|
||||
region mycylinderinside2 cylinder x ${c1} ${c2} ${radius} ${lo} ${hi}
|
||||
|
||||
variable n_nodes_Cy_2 equal "round(v_more*0.28*((2*PI*v_radius*(v_hi-v_lo))+(2*PI*(v_radius)^2)))"
|
||||
create_atoms 2 random ${n_nodes_Cy_2} 1234 mycylinderinside2 units box
|
||||
|
||||
variable radius_2 equal "v_radius + v_rcutlj93"
|
||||
variable hi_2 equal "v_hi + 2*v_rcutlj93"
|
||||
variable lo_2 equal "v_lo - v_rcutlj93"
|
||||
region mycylinder2 cylinder x ${c1} ${c2} ${radius_2} ${lo_2} ${hi_2}
|
||||
group gcylinder2 region mycylinder2
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the cylinder
|
||||
#-------------------------------------------------------------------------#
|
||||
variable c1 equal -9.0
|
||||
variable c2 equal -1.5
|
||||
variable radius equal 6.0
|
||||
variable lo equal -12.5
|
||||
variable hi equal -9.5
|
||||
|
||||
region mycylinderinside3 cylinder x ${c1} ${c2} ${radius} ${lo} ${hi}
|
||||
|
||||
variable n_nodes_Cy_3 equal "round(v_more*0.28*((2*PI*v_radius*(v_hi-v_lo))+(2*PI*(v_radius)^2)))"
|
||||
create_atoms 3 random ${n_nodes_Cy_3} 1234 mycylinderinside3 units box
|
||||
|
||||
variable radius_2 equal "v_radius + v_rcutlj93"
|
||||
variable hi_2 equal "v_hi + v_rcutlj93"
|
||||
variable lo_2 equal "v_lo - 2*v_rcutlj93"
|
||||
region mycylinder3 cylinder x ${c1} ${c2} ${radius_2} ${lo_2} ${hi_2}
|
||||
group gcylinder3 region mycylinder3
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the cylinder
|
||||
#-------------------------------------------------------------------------#
|
||||
variable c1 equal 12.0
|
||||
variable c2 equal -1.5
|
||||
variable radius equal 6.0
|
||||
variable lo equal -12.5
|
||||
variable hi equal -9.5
|
||||
|
||||
region mycylinderinside4 cylinder x ${c1} ${c2} ${radius} ${lo} ${hi}
|
||||
|
||||
variable n_nodes_Cy_4 equal "round(v_more*0.28*((2*PI*v_radius*(v_hi-v_lo))+(2*PI*(v_radius)^2)))"
|
||||
create_atoms 4 random ${n_nodes_Cy_4} 1234 mycylinderinside4 units box
|
||||
|
||||
variable radius_2 equal "v_radius + v_rcutlj93"
|
||||
variable hi_2 equal "v_hi + v_rcutlj93"
|
||||
variable lo_2 equal "v_lo - 2*v_rcutlj93"
|
||||
region mycylinder4 cylinder x ${c1} ${c2} ${radius_2} ${lo_2} ${hi_2}
|
||||
group gcylinder4 region mycylinder4
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the prism
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo1 equal -5.0
|
||||
variable xhi1 equal 5.0
|
||||
variable ylo1 equal -15.0
|
||||
variable yhi1 equal 15.0
|
||||
variable zlo1 equal -6.0
|
||||
variable zhi1 equal 6.0
|
||||
|
||||
region myprisminside1 block ${xlo1} ${xhi1} ${ylo1} ${yhi1} ${zlo1} ${zhi1}
|
||||
variable n_nodes_P_1 equal "(round(v_more*3.4*(6*(10.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 5 random ${n_nodes_P_1} 1234 myprisminside1 units box
|
||||
|
||||
variable xlo1_2 equal "v_xlo1 - v_rcutlj93/2"
|
||||
variable xhi1_2 equal "v_xhi1 + v_rcutlj93/2"
|
||||
variable ylo1_2 equal "v_ylo1 - v_rcutlj93/2"
|
||||
variable yhi1_2 equal "v_yhi1 + v_rcutlj93/2"
|
||||
variable zlo1_2 equal "v_zlo1 - v_rcutlj93/2"
|
||||
variable zhi1_2 equal "v_zhi1 + v_rcutlj93/2"
|
||||
|
||||
region myprism1 block ${xlo1_2} ${xhi1_2} ${ylo1_2} ${yhi1_2} ${zlo1_2} ${zhi1_2}
|
||||
group gprism1 region myprism1
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the rear wing
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo2 equal -10.0
|
||||
variable xhi2 equal 10.0
|
||||
variable ylo2 equal 14.0
|
||||
variable yhi2 equal 22.0
|
||||
variable zlo2 equal 10.0
|
||||
variable zhi2 equal 12.0
|
||||
|
||||
region myprisminside2 block ${xlo2} ${xhi2} ${ylo2} ${yhi2} ${zlo2} ${zhi2}
|
||||
variable n_nodes_P_2 equal "(round(v_more*0.93*(6*(7.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 6 random ${n_nodes_P_2} 1234 myprisminside2 units box
|
||||
|
||||
variable xlo2_2 equal "v_xlo2 - v_rcutlj93/2"
|
||||
variable xhi2_2 equal "v_xhi2 + v_rcutlj93/2"
|
||||
variable ylo2_2 equal "v_ylo2 - v_rcutlj93/2"
|
||||
variable yhi2_2 equal "v_yhi2 + v_rcutlj93/2"
|
||||
variable zlo2_2 equal "v_zlo2 - v_rcutlj93/2"
|
||||
variable zhi2_2 equal "v_zhi2 + v_rcutlj93/2"
|
||||
|
||||
region myprism2 block ${xlo2_2} ${xhi2_2} ${ylo2_2} ${yhi2_2} ${zlo2_2} ${zhi2_2}
|
||||
group gprism2 region myprism2
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the rear wing stand
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo3 equal -2.0
|
||||
variable xhi3 equal 2.0
|
||||
variable ylo3 equal 17.0
|
||||
variable yhi3 equal 19.0
|
||||
variable zlo3 equal -2.0
|
||||
variable zhi3 equal 7.0
|
||||
|
||||
region myprisminside3 block ${xlo3} ${xhi3} ${ylo3} ${yhi3} ${zlo3} ${zhi3}
|
||||
variable n_nodes_P_3 equal "(round(v_more*0.32*(6*(6.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 7 random ${n_nodes_P_3} 1234 myprisminside3 units box
|
||||
|
||||
variable xlo3_2 equal "v_xlo3 - v_rcutlj93/2"
|
||||
variable xhi3_2 equal "v_xhi3 + v_rcutlj93/2"
|
||||
variable ylo3_2 equal "v_ylo3 - v_rcutlj93/2"
|
||||
variable yhi3_2 equal "v_yhi3 + v_rcutlj93/2"
|
||||
variable zlo3_2 equal "v_zlo3 - v_rcutlj93/2"
|
||||
variable zhi3_2 equal "v_zhi3 + v_rcutlj93/2"
|
||||
|
||||
region myprism3 block ${xlo3_2} ${xhi3_2} ${ylo3_2} ${yhi3_2} ${zlo3_2} ${zhi3_2}
|
||||
group gprism3 region myprism3
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the front wing
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo4 equal -10.0
|
||||
variable xhi4 equal 10.0
|
||||
variable ylo4 equal -26.5
|
||||
variable yhi4 equal -22.0
|
||||
variable zlo4 equal -5.0
|
||||
variable zhi4 equal -3.0
|
||||
|
||||
region myprisminside4 block ${xlo4} ${xhi4} ${ylo4} ${yhi4} ${zlo4} ${zhi4}
|
||||
variable n_nodes_P_4 equal "(round(v_more*1.47*(6*(4.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 8 random ${n_nodes_P_4} 1234 myprisminside4 units box
|
||||
|
||||
variable xlo4_2 equal "v_xlo4 - v_rcutlj93/2"
|
||||
variable xhi4_2 equal "v_xhi4 + v_rcutlj93/2"
|
||||
variable ylo4_2 equal "v_ylo4 - v_rcutlj93/2"
|
||||
variable yhi4_2 equal "v_yhi4 + v_rcutlj93/2"
|
||||
variable zlo4_2 equal "v_zlo4 - v_rcutlj93/2"
|
||||
variable zhi4_2 equal "v_zhi4 + v_rcutlj93/2"
|
||||
|
||||
region myprism4 block ${xlo4_2} ${xhi4_2} ${ylo4_2} ${yhi4_2} ${zlo4_2} ${zhi4_2}
|
||||
group gprism4 region myprism4
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the front wing stand
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo5 equal -4.0
|
||||
variable xhi5 equal 4.0
|
||||
variable ylo5 equal -20.0
|
||||
variable yhi5 equal -18.0
|
||||
variable zlo5 equal -5.0
|
||||
variable zhi5 equal 3.0
|
||||
|
||||
region myprisminside5 block ${xlo5} ${xhi5} ${ylo5} ${yhi5} ${zlo5} ${zhi5}
|
||||
variable n_nodes_P_5 equal "(round(v_more*2.15*(6*(3.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 9 random ${n_nodes_P_5} 1234 myprisminside5 units box
|
||||
|
||||
variable xlo5_2 equal "v_xlo5 - v_rcutlj93/2"
|
||||
variable xhi5_2 equal "v_xhi5 + v_rcutlj93/2"
|
||||
variable ylo5_2 equal "v_ylo5 - v_rcutlj93/2"
|
||||
variable yhi5_2 equal "v_yhi5 + v_rcutlj93/2"
|
||||
variable zlo5_2 equal "v_zlo5 - v_rcutlj93/2"
|
||||
variable zhi5_2 equal "v_zhi5 + v_rcutlj93/2"
|
||||
|
||||
region myprism5 block ${xlo5_2} ${xhi5_2} ${ylo5_2} ${yhi5_2} ${zlo5_2} ${zhi5_2}
|
||||
group gprism5 region myprism5
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the driver
|
||||
#-------------------------------------------------------------------------#
|
||||
variable radius2 equal 1.0
|
||||
variable xloc equal 0.0
|
||||
variable yloc equal 3.0
|
||||
variable zloc equal 9.5
|
||||
|
||||
region mysphereinside2 sphere ${xloc} ${yloc} ${zloc} ${radius2}
|
||||
|
||||
variable n_nodes_S_2 equal "(round(v_more*2.0*(2*v_radius2^2/v_dx^2)))"
|
||||
create_atoms 10 random ${n_nodes_S_2} 1234 mysphereinside2 units box
|
||||
variable radius2_2 equal "v_radius2 + v_rcutlj93"
|
||||
region mysphere2 sphere ${xloc} ${yloc} ${zloc} ${radius2_2}
|
||||
group gball2 region mysphere2
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the rear wing side
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo5 equal 12.0
|
||||
variable xhi5 equal 14.25
|
||||
variable ylo5 equal 14.0
|
||||
variable yhi5 equal 22.0
|
||||
variable zlo5 equal 10.0
|
||||
variable zhi5 equal 14.0
|
||||
|
||||
region myprisminside6 block ${xlo5} ${xhi5} ${ylo5} ${yhi5} ${zlo5} ${zhi5}
|
||||
variable n_nodes_P_6 equal "(round(v_more*1.0*(6*(3.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 11 random ${n_nodes_P_6} 1234 myprisminside6 units box
|
||||
|
||||
variable xlo5_2 equal "v_xlo5 - v_rcutlj93/2"
|
||||
variable xhi5_2 equal "v_xhi5 + v_rcutlj93/2"
|
||||
variable ylo5_2 equal "v_ylo5 - v_rcutlj93/2"
|
||||
variable yhi5_2 equal "v_yhi5 + v_rcutlj93/2"
|
||||
variable zlo5_2 equal "v_zlo5 - v_rcutlj93/2"
|
||||
variable zhi5_2 equal "v_zhi5 + v_rcutlj93/2"
|
||||
|
||||
region myprism6 block ${xlo5_2} ${xhi5_2} ${ylo5_2} ${yhi5_2} ${zlo5_2} ${zhi5_2}
|
||||
group gprism6 region myprism6
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the rear wing side
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo5 equal -14.25
|
||||
variable xhi5 equal -12.0
|
||||
variable ylo5 equal 14.0
|
||||
variable yhi5 equal 22.0
|
||||
variable zlo5 equal 10.0
|
||||
variable zhi5 equal 14.0
|
||||
|
||||
region myprisminside7 block ${xlo5} ${xhi5} ${ylo5} ${yhi5} ${zlo5} ${zhi5}
|
||||
variable n_nodes_P_7 equal "(round(v_more*1.0*(6*(3.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 12 random ${n_nodes_P_7} 1234 myprisminside7 units box
|
||||
|
||||
variable xlo5_2 equal "v_xlo5 - v_rcutlj93/2"
|
||||
variable xhi5_2 equal "v_xhi5 + v_rcutlj93/2"
|
||||
variable ylo5_2 equal "v_ylo5 - v_rcutlj93/2"
|
||||
variable yhi5_2 equal "v_yhi5 + v_rcutlj93/2"
|
||||
variable zlo5_2 equal "v_zlo5 - v_rcutlj93/2"
|
||||
variable zhi5_2 equal "v_zhi5 + v_rcutlj93/2"
|
||||
|
||||
region myprism7 block ${xlo5_2} ${xhi5_2} ${ylo5_2} ${yhi5_2} ${zlo5_2} ${zhi5_2}
|
||||
group gprism7 region myprism7
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the front wing side
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo5 equal 12.0
|
||||
variable xhi5 equal 14.25
|
||||
variable ylo5 equal -26.0
|
||||
variable yhi5 equal -20.0
|
||||
variable zlo5 equal -5.0
|
||||
variable zhi5 equal -1.0
|
||||
|
||||
region myprisminside8 block ${xlo5} ${xhi5} ${ylo5} ${yhi5} ${zlo5} ${zhi5}
|
||||
variable n_nodes_P_8 equal "(round(v_more*1.8*(6*(2.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 11 random ${n_nodes_P_8} 1234 myprisminside8 units box
|
||||
|
||||
variable xlo5_2 equal "v_xlo5 - v_rcutlj93/2"
|
||||
variable xhi5_2 equal "v_xhi5 + v_rcutlj93/2"
|
||||
variable ylo5_2 equal "v_ylo5 - v_rcutlj93/2"
|
||||
variable yhi5_2 equal "v_yhi5 + v_rcutlj93/2"
|
||||
variable zlo5_2 equal "v_zlo5 - v_rcutlj93/2"
|
||||
variable zhi5_2 equal "v_zhi5 + v_rcutlj93/2"
|
||||
|
||||
region myprism8 block ${xlo5_2} ${xhi5_2} ${ylo5_2} ${yhi5_2} ${zlo5_2} ${zhi5_2}
|
||||
group gprism8 region myprism8
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# Creating the front wing side
|
||||
#-------------------------------------------------------------------------#
|
||||
variable xlo5 equal -14.25
|
||||
variable xhi5 equal -12.0
|
||||
variable ylo5 equal -26.0
|
||||
variable yhi5 equal -20.0
|
||||
variable zlo5 equal -5.0
|
||||
variable zhi5 equal -1.0
|
||||
|
||||
region myprisminside9 block ${xlo5} ${xhi5} ${ylo5} ${yhi5} ${zlo5} ${zhi5}
|
||||
variable n_nodes_P_9 equal "(round(v_more*1.8*(6*(2.0)^2)/(PI*v_dx^2)))"
|
||||
create_atoms 12 random ${n_nodes_P_9} 1234 myprisminside9 units box
|
||||
|
||||
variable xlo5_2 equal "v_xlo5 - v_rcutlj93/2"
|
||||
variable xhi5_2 equal "v_xhi5 + v_rcutlj93/2"
|
||||
variable ylo5_2 equal "v_ylo5 - v_rcutlj93/2"
|
||||
variable yhi5_2 equal "v_yhi5 + v_rcutlj93/2"
|
||||
variable zlo5_2 equal "v_zlo5 - v_rcutlj93/2"
|
||||
variable zhi5_2 equal "v_zhi5 + v_rcutlj93/2"
|
||||
|
||||
region myprism9 block ${xlo5_2} ${xhi5_2} ${ylo5_2} ${yhi5_2} ${zlo5_2} ${zhi5_2}
|
||||
group gprism9 region myprism9
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# creating the union between the regions
|
||||
#------------------------------------------------------------------------#
|
||||
|
||||
group wheels union gcylinder1 gcylinder2 gcylinder3 gcylinder4
|
||||
group not_wheels union gprism1 gprism2 gprism3 gprism4 gprism5 gball2 gprism6 gprism7 gprism8 gprism9
|
||||
|
||||
group aero_group union gprism2 gprism3 gprism4 gprism5 gball2 gprism6 gprism7 gprism8 gprism9
|
||||
region aero union 9 myprism2 myprism3 myprism4 myprism5 mysphere2 myprism6 myprism7 myprism8 myprism9
|
||||
group chassis_group union gcylinder1 gcylinder2 gcylinder3 gcylinder4 gprism1
|
||||
region chassis union 5 mycylinder1 mycylinder2 mycylinder3 mycylinder4 myprism1
|
||||
|
||||
group surge_group union aero_group chassis_group
|
||||
region surge union 2 aero chassis
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Soft Potential
|
||||
#------------------------------------------------------------------------#
|
||||
variable softlength equal "0.5*v_rcutlj"
|
||||
pair_style soft ${softlength}
|
||||
pair_coeff * * 0.0
|
||||
variable prefactor equal ramp(0,4.14e-8)
|
||||
fix 1 all adapt 1 pair soft a * * v_prefactor
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Run parameters and set up dump
|
||||
#------------------------------------------------------------------------#
|
||||
timestep 0.2
|
||||
mass * 1.0e-6
|
||||
|
||||
variable nbin equal "v_rcutlj / (4/3)"
|
||||
neighbor ${nbin} bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
#variable commcutoff equal "v_dx*2"
|
||||
#comm_modify cutoff ${commcutoff}
|
||||
|
||||
dump mydump all atom 10000 out.lammpstrj
|
||||
thermo 5000
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Computes initial interaction
|
||||
#------------------------------------------------------------------------#
|
||||
variable epsilon equal 10.0e-10
|
||||
variable cutofflj93 equal 7.0
|
||||
|
||||
fix wall surge_group wall/region surge lj93 ${epsilon} ${sigma} ${cutofflj93}
|
||||
|
||||
fix 3 all langevin 31000000.0 50000.0 100.0 5678
|
||||
|
||||
fix 2 all nve
|
||||
|
||||
restart 100000 ParticleRestart
|
||||
|
||||
run 100000
|
||||
|
||||
unfix 1
|
||||
unfix 2
|
||||
unfix 3
|
||||
unfix wall
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Phase 2 : annealing
|
||||
#------------------------------------------------------------------------#
|
||||
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Soft Potential
|
||||
#------------------------------------------------------------------------#
|
||||
variable softlength equal "0.475*v_rcutlj"
|
||||
pair_style soft ${softlength}
|
||||
pair_coeff * * 4.14e-8
|
||||
|
||||
#------------------------------------------------------------------------#
|
||||
# Computes initial interaction
|
||||
#------------------------------------------------------------------------#
|
||||
variable epsilon equal 20.0e-10
|
||||
variable cutofflj93 equal 7.0
|
||||
|
||||
fix wall surge_group wall/region surge lj93 ${epsilon} ${sigma} ${cutofflj93}
|
||||
|
||||
fix 3 all langevin 100000.0 5000.0 100.0 5678
|
||||
|
||||
fix 2 all nve
|
||||
|
||||
run 200000
|
||||
|
||||
minimize 0.0 1.0e-8 1000 100000
|
||||
|
||||
unfix wall
|
||||
unfix 2
|
||||
unfix 3
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
# The lb/fluid simulation
|
||||
#
|
||||
# The sphere travels through the simulation, being pushed by the fluid
|
||||
#-------------------------------------------------------------------------#
|
||||
|
||||
variable number_all equal count(all)
|
||||
variable node_mass equal "500000 / v_number_all"
|
||||
mass 5* ${node_mass}
|
||||
variable wheel_mass equal "v_node_mass/1000"
|
||||
mass *4 ${wheel_mass}
|
||||
|
||||
variable dx equal 1.0
|
||||
variable density equal 0.001184
|
||||
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
comm_modify cutoff 3.0
|
||||
|
||||
pair_style lj/cut 1.2
|
||||
pair_coeff * * 0.0 0.0
|
||||
|
||||
timestep 0.025
|
||||
|
||||
reset_timestep 0
|
||||
|
||||
#variable total_force equal 0.2
|
||||
#variable node_force equal "v_total_force / 178"
|
||||
#fix drag all addforce 0.0 0.0 0.0
|
||||
|
||||
velocity all set 0.0 -7.5.0 0.0 units box
|
||||
|
||||
# viscosity of air is 0.0001847
|
||||
|
||||
fix FL all lb/fluid 1 0.0002 ${density} stencil 2 dx ${dx} zwall_velocity 0 0 dumpxdmf 1000 sflow 0
|
||||
|
||||
variable vx equal vcm(all,x)
|
||||
variable vy equal vcm(all,y)
|
||||
variable vz equal vcm(all,z)
|
||||
|
||||
dump mydumpvtk all vtk 1000 out*.vtp vx vy vz
|
||||
|
||||
fix 2 all lb/viscous
|
||||
|
||||
fix 4 not_wheels nve
|
||||
|
||||
fix 3 wheels rigid group 4 gcylinder1 gcylinder2 gcylinder3 gcylinder4 force * off off off torque * on off off
|
||||
|
||||
fix 5 not_wheels setforce 0.0 0.0 0.0
|
||||
|
||||
thermo_style custom step v_number_all v_node_mass f_FL[2] f_5[1] f_5[2] f_5[3]
|
||||
thermo 100
|
||||
|
||||
run 5000
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------#
|
||||
346
examples/PACKAGES/latboltz/toycar/toycar.out
Normal file
346
examples/PACKAGES/latboltz/toycar/toycar.out
Normal file
@ -0,0 +1,346 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Created orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
1 by 8 by 2 MPI processor grid
|
||||
Created 618 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.002 seconds
|
||||
618 atoms in group gcylinder1
|
||||
Created 618 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
618 atoms in group gcylinder2
|
||||
Created 618 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
618 atoms in group gcylinder3
|
||||
Created 618 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
618 atoms in group gcylinder4
|
||||
Created 1876 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
1876 atoms in group gprism1
|
||||
Created 251 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
251 atoms in group gprism2
|
||||
Created 64 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
64 atoms in group gprism3
|
||||
Created 130 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
130 atoms in group gprism4
|
||||
Created 107 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
107 atoms in group gprism5
|
||||
Created 12 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
12 atoms in group gball2
|
||||
Created 50 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
50 atoms in group gprism6
|
||||
Created 50 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
50 atoms in group gprism7
|
||||
Created 40 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
40 atoms in group gprism8
|
||||
Created 40 atoms
|
||||
using box units in orthogonal box = (-48.000000 -90.000000 -9.0000000) to (48.000000 630.00000 87.000000)
|
||||
create_atoms CPU = 0.000 seconds
|
||||
40 atoms in group gprism9
|
||||
2472 atoms in group wheels
|
||||
2620 atoms in group not_wheels
|
||||
744 atoms in group aero_group
|
||||
4348 atoms in group chassis_group
|
||||
5092 atoms in group surge_group
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.5255396
|
||||
ghost atom cutoff = 2.5255396
|
||||
binsize = 1.2627698, bins = 77 571 77
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair soft, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : cgs
|
||||
Current step : 0
|
||||
Time step : 0.2
|
||||
Per MPI rank memory allocation (min/avg/max) = 1.689 | 2.134 | 5.251 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 0
|
||||
5000 29653357 4.7734395e-06 0 3.6037973e-05 3.9588004e-12
|
||||
10000 27574618 7.2702735e-06 0 3.6343122e-05 4.3745405e-12
|
||||
15000 26623925 8.3820954e-06 0 3.6452596e-05 4.8194698e-12
|
||||
20000 25215034 8.4921576e-06 0 3.5077217e-05 5.063101e-12
|
||||
25000 23697715 8.1953844e-06 0 3.3180683e-05 5.2366712e-12
|
||||
30000 21932332 7.7249763e-06 0 3.0848972e-05 5.2459369e-12
|
||||
35000 20053097 7.4020494e-06 0 2.8544705e-05 5.3033614e-12
|
||||
40000 18850984 6.6058004e-06 0 2.6481028e-05 5.2482481e-12
|
||||
45000 16878277 5.732186e-06 0 2.3527521e-05 5.0022257e-12
|
||||
50000 15969329 5.4014349e-06 0 2.2238436e-05 4.9694943e-12
|
||||
55000 14332838 4.6078293e-06 0 1.9719423e-05 4.7358656e-12
|
||||
60000 12797460 3.8856372e-06 0 1.737843e-05 4.4893714e-12
|
||||
65000 11185599 3.3207593e-06 0 1.5114113e-05 4.1387741e-12
|
||||
70000 9354337.4 2.6757523e-06 0 1.2538345e-05 3.7235349e-12
|
||||
75000 7853652.1 2.1282565e-06 0 1.0408626e-05 3.3014585e-12
|
||||
80000 6406387 1.6177406e-06 0 8.3722101e-06 2.8929882e-12
|
||||
85000 4908480.7 1.0936224e-06 0 6.2687989e-06 2.3307841e-12
|
||||
90000 3240017.2 7.1493728e-07 0 4.1309966e-06 1.8051168e-12
|
||||
95000 1767252.1 3.3323177e-07 0 2.1965051e-06 1.1574583e-12
|
||||
100000 214990.95 4.3210787e-08 0 2.6988298e-07 3.7669124e-13
|
||||
Loop time of 224.453 on 16 procs for 100000 steps with 5092 atoms
|
||||
|
||||
99.5% CPU use with 16 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.0041508 | 3.2305 | 26.286 | 475.0 | 1.44
|
||||
Neigh | 0.48891 | 1.7037 | 10.24 | 245.1 | 0.76
|
||||
Comm | 0.14989 | 0.36541 | 2.0492 | 80.6 | 0.16
|
||||
Output | 0.029068 | 0.071852 | 0.077982 | 5.9 | 0.03
|
||||
Modify | 0.19877 | 22.782 | 185.72 |1252.2 | 10.15
|
||||
Other | | 196.3 | | | 87.46
|
||||
|
||||
Nlocal: 318.250 ave 2599 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 19.6250 ave 160 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 4980.25 ave 40336 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 79684
|
||||
Ave neighs/atom = 15.648861
|
||||
Neighbor list builds = 4955
|
||||
Dangerous builds = 0
|
||||
Setting up Verlet run ...
|
||||
Unit style : cgs
|
||||
Current step : 100000
|
||||
Time step : 0.2
|
||||
Per MPI rank memory allocation (min/avg/max) = 1.741 | 2.195 | 5.326 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
100000 214990.95 0 0 2.266722e-07 2.2773618e-14
|
||||
105000 103970.88 6.6908938e-08 0 1.7652894e-07 7.0362091e-13
|
||||
110000 97146.949 6.4681094e-08 0 1.6710639e-07 7.0498855e-13
|
||||
115000 93498.926 6.6281932e-08 0 1.64861e-07 7.159638e-13
|
||||
120000 90495.811 6.4208007e-08 0 1.5962079e-07 7.1712077e-13
|
||||
125000 87959.045 6.5517546e-08 0 1.5825573e-07 7.2366609e-13
|
||||
130000 86381.625 6.1168787e-08 0 1.5224384e-07 6.9916073e-13
|
||||
135000 83153.956 6.2250238e-08 0 1.4992225e-07 7.04846e-13
|
||||
140000 80984.294 6.3000049e-08 0 1.4838452e-07 7.1539396e-13
|
||||
145000 79533.597 5.9676346e-08 0 1.435313e-07 6.9841788e-13
|
||||
150000 77000.73 6.1523884e-08 0 1.4270835e-07 7.120063e-13
|
||||
155000 73683.759 5.9946159e-08 0 1.3763343e-07 7.0660837e-13
|
||||
160000 72974.826 6.0724099e-08 0 1.3766392e-07 7.1071605e-13
|
||||
165000 69691.128 6.0460845e-08 0 1.3393855e-07 7.180638e-13
|
||||
170000 67189.78 5.9914539e-08 0 1.3075499e-07 7.2033578e-13
|
||||
175000 65055.667 5.6825296e-08 0 1.2541568e-07 6.9616887e-13
|
||||
180000 61592.611 5.5166561e-08 0 1.2010573e-07 6.8759774e-13
|
||||
185000 60089.16 5.308612e-08 0 1.1644015e-07 6.8210284e-13
|
||||
190000 56806.407 5.2255502e-08 0 1.1214841e-07 6.7415401e-13
|
||||
195000 55413.919 5.2741451e-08 0 1.1116621e-07 6.7996563e-13
|
||||
200000 52455.282 5.1001789e-08 0 1.0630716e-07 6.7516294e-13
|
||||
205000 49276.345 5.0081869e-08 0 1.0203558e-07 6.7176307e-13
|
||||
210000 47382.758 4.9770319e-08 0 9.9727556e-08 6.6796671e-13
|
||||
215000 45468.582 4.8494832e-08 0 9.6433889e-08 6.640538e-13
|
||||
220000 43747.344 4.9228162e-08 0 9.5352459e-08 6.7748697e-13
|
||||
225000 39986.728 4.6849936e-08 0 8.9009291e-08 6.6080957e-13
|
||||
230000 38695.786 4.7036406e-08 0 8.7834676e-08 6.704184e-13
|
||||
235000 35860.086 4.5515831e-08 0 8.3324328e-08 6.6254084e-13
|
||||
240000 33134.143 4.3643806e-08 0 7.8578249e-08 6.4337478e-13
|
||||
245000 31499.136 4.3700119e-08 0 7.691072e-08 6.5695058e-13
|
||||
250000 29235.08 4.1903104e-08 0 7.2726633e-08 6.4670433e-13
|
||||
255000 26534.656 3.990631e-08 0 6.7882692e-08 6.2974614e-13
|
||||
260000 24003.589 4.0601032e-08 0 6.5908824e-08 6.4499768e-13
|
||||
265000 21943.577 3.8935897e-08 0 6.2071749e-08 6.3562405e-13
|
||||
270000 19653.579 3.7402165e-08 0 5.8123595e-08 6.3432146e-13
|
||||
275000 17275.037 3.6209636e-08 0 5.442329e-08 6.2936445e-13
|
||||
280000 14732.579 3.5846593e-08 0 5.1379647e-08 6.2971704e-13
|
||||
285000 12342.93 3.4985594e-08 0 4.7999161e-08 6.3361065e-13
|
||||
290000 9958.5787 3.3757377e-08 0 4.4257042e-08 6.3251877e-13
|
||||
295000 7752.6563 3.2166604e-08 0 4.0340491e-08 6.2435198e-13
|
||||
300000 5153.3153 3.1185774e-08 0 3.6619088e-08 6.2358439e-13
|
||||
Loop time of 428.577 on 16 procs for 200000 steps with 5092 atoms
|
||||
|
||||
99.5% CPU use with 16 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.0078672 | 7.2993 | 59.383 | 714.2 | 1.70
|
||||
Neigh | 0.013027 | 0.032544 | 0.16934 | 27.9 | 0.01
|
||||
Comm | 0.054276 | 0.37785 | 3.5462 | 147.8 | 0.09
|
||||
Output | 0.06532 | 0.14529 | 0.1567 | 7.7 | 0.03
|
||||
Modify | 0.025902 | 44.512 | 365.8 |1764.9 | 10.39
|
||||
Other | | 376.2 | | | 87.78
|
||||
|
||||
Nlocal: 318.250 ave 2602 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 17.5625 ave 143 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 4789.38 ave 38883 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 76630
|
||||
Ave neighs/atom = 15.049097
|
||||
Neighbor list builds = 118
|
||||
Dangerous builds = 0
|
||||
Setting up cg style minimization ...
|
||||
Unit style : cgs
|
||||
Current step : 300000
|
||||
Per MPI rank memory allocation (min/avg/max) = 1.741 | 2.335 | 6.451 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
300000 5153.3153 3.1185774e-08 0 3.6619088e-08 6.2358439e-13
|
||||
301000 5153.3153 3.1178966e-08 0 3.661228e-08 6.2353588e-13
|
||||
Loop time of 2.19014 on 16 procs for 1000 steps with 5092 atoms
|
||||
|
||||
99.5% CPU use with 16 MPI tasks x no OpenMP threads
|
||||
|
||||
Minimization stats:
|
||||
Stopping criterion = max iterations
|
||||
Energy initial, next-to-last, final =
|
||||
3.11857740502293e-08 3.11789729919519e-08 3.11789661924564e-08
|
||||
Force two-norm initial, final = 8.1990455e-08 8.1892870e-08
|
||||
Force max component initial, final = 3.0741586e-09 3.0685608e-09
|
||||
Final line search alpha, max atom move = 1.0000000 3.0685608e-09
|
||||
Iterations, force evaluations = 1000 1000
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 5.1437e-05 | 0.056621 | 0.4634 | 62.9 | 2.59
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.0001289 | 0.0024177 | 0.028614 | 14.3 | 0.11
|
||||
Output | 3.6288e-05 | 3.7468e-05 | 3.8983e-05 | 0.0 | 0.00
|
||||
Modify | 4.4937e-05 | 0.20167 | 1.6571 | 118.8 | 9.21
|
||||
Other | | 1.929 | | | 88.09
|
||||
|
||||
Nlocal: 318.250 ave 2602 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 17.5625 ave 143 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 4789.38 ave 38883 max 0 min
|
||||
Histogram: 14 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 76630
|
||||
Ave neighs/atom = 15.049097
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
Using a lattice-Boltzmann grid of 96 by 720 by 97 total grid points. (../fix_lb_fluid.cpp:477)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1023)
|
||||
First Run initialized
|
||||
4 rigid bodies with 2472 atoms
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.7
|
||||
ghost atom cutoff = 3
|
||||
binsize = 0.85, bins = 113 848 113
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : cgs
|
||||
Current step : 0
|
||||
Time step : 0.025
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.238 | 4.872 | 9.308 Mbytes
|
||||
Step v_number_all v_node_mass f_FL[2] f_5[1] f_5[2] f_5[3]
|
||||
0 5092 98.193244 265447.33 0 0 0
|
||||
100 5092 98.193244 265447.33 0.21831855 10.819389 -2.3665527
|
||||
200 5092 98.193244 265447.33 0.081352555 13.33314 0.24750908
|
||||
300 5092 98.193244 265447.33 -0.13723109 12.179202 0.35802438
|
||||
400 5092 98.193244 265447.33 -0.057588432 14.508288 3.3901771
|
||||
500 5092 98.193244 265447.33 -0.05026018 11.590396 3.3204264
|
||||
600 5092 98.193244 265447.33 0.0092174774 10.829799 0.55313683
|
||||
700 5092 98.193244 265447.33 -0.20861033 10.801467 1.5288445
|
||||
800 5092 98.193244 265447.33 -0.17761042 12.668514 1.8746262
|
||||
900 5092 98.193244 265447.33 -0.046957187 10.410009 2.5061791
|
||||
1000 5092 98.193244 265447.33 0.017637786 10.502295 1.4603753
|
||||
1100 5092 98.193244 265447.33 -0.1992929 9.5275081 1.926958
|
||||
1200 5092 98.193244 265447.33 -0.10276752 12.112636 2.6301022
|
||||
1300 5092 98.193244 265447.33 0.055577062 10.390509 2.8449094
|
||||
1400 5092 98.193244 265447.33 0.13383948 10.283919 3.2933858
|
||||
1500 5092 98.193244 265447.33 -0.10521833 9.9952804 3.0181533
|
||||
1600 5092 98.193244 265447.33 -0.045015836 12.123929 3.0026447
|
||||
1700 5092 98.193244 265447.33 0.035497645 10.360672 1.0635496
|
||||
1800 5092 98.193244 265447.33 0.08147355 9.3665483 3.0104928
|
||||
1900 5092 98.193244 265447.33 -0.14473824 8.5432989 2.9728625
|
||||
2000 5092 98.193244 265447.33 -0.041564059 11.63113 1.5867575
|
||||
2100 5092 98.193244 265447.33 0.0045129003 9.9456671 1.436601
|
||||
2200 5092 98.193244 265447.33 -0.0096402369 9.8767813 1.6785458
|
||||
2300 5092 98.193244 265447.33 -0.10765247 10.631171 3.1290797
|
||||
2400 5092 98.193244 265447.33 -0.12241137 9.8917039 3.56271
|
||||
2500 5092 98.193244 265447.33 0.017303567 10.134216 2.5224533
|
||||
2600 5092 98.193244 265447.33 -0.093777044 10.200634 1.3519144
|
||||
2700 5092 98.193244 265447.33 -0.15578186 9.6684009 2.5384049
|
||||
2800 5092 98.193244 265447.33 -0.094570471 11.481058 2.5282483
|
||||
2900 5092 98.193244 265447.33 0.089970872 10.289575 1.3841899
|
||||
3000 5092 98.193244 265447.33 0.041066985 10.330879 1.6643933
|
||||
3100 5092 98.193244 265447.33 -0.088145926 9.8790269 1.9878739
|
||||
3200 5092 98.193244 265447.33 -0.021810579 10.686768 3.0303691
|
||||
3300 5092 98.193244 265447.33 0.015098791 10.043207 1.6937351
|
||||
3400 5092 98.193244 265447.33 0.031969826 11.142544 0.63633496
|
||||
3500 5092 98.193244 265447.33 -0.10691176 9.6246461 0.81948178
|
||||
3600 5092 98.193244 265447.33 -0.082628312 10.739668 2.3316856
|
||||
3700 5092 98.193244 265447.33 0.062856304 9.2410456 2.8655012
|
||||
3800 5092 98.193244 265447.33 0.035815853 9.5050341 2.073665
|
||||
3900 5092 98.193244 265447.33 -0.11890515 8.9851356 2.3096977
|
||||
4000 5092 98.193244 265447.33 -0.088669613 11.336617 2.2657778
|
||||
4100 5092 98.193244 265447.33 0.22672389 9.4970608 1.8177659
|
||||
4200 5092 98.193244 265447.33 0.12883496 9.1661101 1.8263211
|
||||
4300 5092 98.193244 265447.33 0.058908552 10.145263 2.904343
|
||||
4400 5092 98.193244 265447.33 -0.14535243 11.420664 1.3192619
|
||||
4500 5092 98.193244 265447.33 0.16208072 10.039004 0.83706642
|
||||
4600 5092 98.193244 265447.33 0.29778162 9.8285181 1.1165466
|
||||
4700 5092 98.193244 265447.33 0.20330429 9.7335442 1.6344298
|
||||
4800 5092 98.193244 265447.33 0.035461857 10.651313 1.7290641
|
||||
4900 5092 98.193244 265447.33 0.079871784 8.9574124 1.5475086
|
||||
5000 5092 98.193244 265447.33 -0.34561831 9.7951232 2.004021
|
||||
Loop time of 593.648 on 16 procs for 5000 steps with 5092 atoms
|
||||
|
||||
98.8% CPU use with 16 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.0028639 | 0.15264 | 0.46504 | 41.8 | 0.03
|
||||
Neigh | 1.5874 | 2.0111 | 2.8263 | 25.2 | 0.34
|
||||
Comm | 0.13471 | 0.27155 | 0.52658 | 25.6 | 0.05
|
||||
Output | 0.25503 | 0.25532 | 0.25559 | 0.0 | 0.04
|
||||
Modify | 571.75 | 581.55 | 590.84 | 26.3 | 97.96
|
||||
Other | | 9.407 | | | 1.58
|
||||
|
||||
Nlocal: 318.250 ave 5092 max 0 min
|
||||
Histogram: 15 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 0.00000 ave 0 max 0 min
|
||||
Histogram: 16 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2221.19 ave 35539 max 0 min
|
||||
Histogram: 15 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 35539
|
||||
Ave neighs/atom = 6.9793794
|
||||
Neighbor list builds = 2500
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 95.366086
|
||||
LB update time: 209.233008
|
||||
LB PCalc time: 163.998163
|
||||
LB fluidForce time: 60.986279
|
||||
LB CorrectU time: 45.025690
|
||||
Total wall time: 0:20:49
|
||||
1040
examples/PACKAGES/latboltz/translocation/translocation.data
Normal file
1040
examples/PACKAGES/latboltz/translocation/translocation.data
Normal file
File diff suppressed because it is too large
Load Diff
181
examples/PACKAGES/latboltz/translocation/translocation.in
Normal file
181
examples/PACKAGES/latboltz/translocation/translocation.in
Normal file
@ -0,0 +1,181 @@
|
||||
#===========================================================================#
|
||||
# Immersed Boundary Wall #
|
||||
# #
|
||||
# Run consists of a 32-bead coarse-grained polymer #
|
||||
# translocating through a solid-state atomistic wall #
|
||||
# under pressure-driven lattice-Boltzmann fluid flow #
|
||||
# #
|
||||
# To run this example, LAMMPS needs to be compiled with a the following #
|
||||
# packages: MOLECULE, RIGID, USER-LB, USER-VTK #
|
||||
# #
|
||||
#To run this example on N cores, use command: #
|
||||
# mpirun -n N /LAMMPS/EXE/FILE -in polymer.in > output.out #
|
||||
# #
|
||||
# Sample output for polymer from this run can be found in the file: #
|
||||
# 'translocationdump.lammpstrj' #
|
||||
# and viewed using, the VMD software. #
|
||||
# OR #
|
||||
# 'dump.translocation.vtk' #
|
||||
# and viewed using the Paraview software. #
|
||||
# #
|
||||
# Sample output for the wall from this run can be found in the file: #
|
||||
# 'walldump.xyz' #
|
||||
# and can be viewed using the VMD or Paraview Software. #
|
||||
#===========================================================================#
|
||||
|
||||
units nano
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style hybrid molecular
|
||||
special_bonds fene
|
||||
read_data translocation.data
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
#Creating a atomistic wall on an FCC lattice and removing the block from the
|
||||
#middle to create the nanopore
|
||||
#---------------------------------------------------------------------------
|
||||
lattice fcc 1.0
|
||||
region wall block 28 38 0 32 0 32
|
||||
create_atoms 3 region wall
|
||||
|
||||
region hole block 28 38 14 18 14 18
|
||||
delete_atoms region hole compress no
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Need a neighbor bin size smaller than the lattice-Boltzmann grid spacing
|
||||
# to ensure that the particles belonging to a given processor remain inside
|
||||
# that processors lattice-Boltzmann grid.
|
||||
# The communcation cutoff is set to 2.5 dx to ensure that all particles in the
|
||||
# processor ghost fluid region (of width 2dx) are known to local processor.
|
||||
#----------------------------------------------------------------------------
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
neigh_modify exclude type 2 2
|
||||
neigh_modify exclude type 2 1
|
||||
neigh_modify exclude type 2 3
|
||||
neigh_modify exclude type 3 3
|
||||
comm_modify cutoff 2.5
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Implement a hard-sphere interaction between the particles at the center of
|
||||
# each monomer with each other and the wall atoms
|
||||
# (use a truncated and shifted Lennard-Jones potential).
|
||||
#----------------------------------------------------------------------------
|
||||
bond_style fene
|
||||
bond_coeff 1 60.0 2.25 4.14195 1.5
|
||||
pair_style lj/cut 1.68369
|
||||
pair_coeff * * 0 1.5
|
||||
pair_coeff 1 1 4.14195 1.5 1.68369
|
||||
pair_coeff 1 3 4.14195 1.5 1.68369
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# The mass is set 4/3 PI r^3 fluid_density/31 , where r=0.617, 31 is number of
|
||||
# nodes in a single monomer. The mass of wall atoms is chosen heavy as they
|
||||
# are fixed.
|
||||
# ----------------------------------------------------------------------------
|
||||
mass * 0.00000318
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
timestep 0.00005
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# ForceAtoms are the particles at the center of each monomer which
|
||||
# do not interact with the fluid, but are used to implement the hard-sphere
|
||||
# interactions.
|
||||
# FluidAtoms are the particles representing the surface of the monomer
|
||||
# which do interact with the fluid. The nanopore particles are also included
|
||||
# in this group as they interact with the fluid.
|
||||
# Polymer is the entire set of monomers of the composite polymer chain.
|
||||
# WallAtoms are the particles of the nanopore.
|
||||
#----------------------------------------------------------------------------
|
||||
group ForceAtoms type 1
|
||||
group FluidAtoms type 2 3
|
||||
group Polymer type 1 2
|
||||
group WallAtoms type 3
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Create a lattice-Boltzmann fluid covering the simulation domain.
|
||||
# This fluid feels a force due to the particles specified through FluidAtoms
|
||||
# (however, this fix does not explicity apply a force back on to these
|
||||
# particles. This is accomplished through the use of the lb/viscous fix).
|
||||
# We set fluid viscosity = 0.1 and fluid density = 0.00009982071 which
|
||||
# means the kinematic viscosity is idential to that of water but the
|
||||
# dynamic viscosity is a factor of 10 less than that of water which
|
||||
# increases the diffusive dynamics by a corresponding factor of 10.
|
||||
# lattice spacing dx=1.0, and mass unit, dm=0.00009982071 (makes density 1)
|
||||
# Use a thermal lattice-Boltzmann fluid (temperature 300K, random number
|
||||
# seed=15003). This enables the particles to undergo Brownian motion in
|
||||
# the fluid.
|
||||
# In this case we use the scaleGamma argument to set the mass of the WallAtoms
|
||||
# to infinity.
|
||||
# The commented out line can be substituted to look at the flow without noise
|
||||
# which should be similar to the average flow field in the case with noise.
|
||||
#----------------------------------------------------------------------------
|
||||
fix 1 FluidAtoms lb/fluid 1 0.1 0.00009982071 dx 1.0 scaleGamma 3 -1 stencil 2 pressurebcx 1200 noise 300.0 5252
|
||||
#fix 1 FluidAtoms lb/fluid 1 0.1 0.00009982071 dx 1.0 scaleGamma 3 -1 stencil 2 pressurebcx 1200 dumpxdmf 1000 flow5252
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Apply the force from the fluid to the particles, and integrate their
|
||||
# motion, constraining each monomer to move and rotate as a single rigid
|
||||
# spherical object.
|
||||
# Since both the ForceAtoms (central atoms), and the FluidAtoms (spherical
|
||||
# shell) should move and rotate together, this fix is applied to all Polymer
|
||||
# of atoms in the system.
|
||||
# The wall atoms are frozen in space and all the calculated forces on the atoms
|
||||
# are set to zero at each timestep.
|
||||
#----------------------------------------------------------------------------#
|
||||
fix 2 FluidAtoms lb/viscous
|
||||
fix 3 Polymer rigid/small molecule
|
||||
fix freeze WallAtoms setforce 0 0 0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Write position and velocity coordinates into a file every 2000 time steps.
|
||||
#----------------------------------------------------------------------------
|
||||
#variable x1 equal x[1]
|
||||
#variable y1 equal y[1]
|
||||
#variable z1 equal z[1]
|
||||
#variable vx1 equal vx[1]
|
||||
#variable vy1 equal vy[1]
|
||||
#variable vz1 equal vz[1]
|
||||
#variable x2 equal x[249]
|
||||
#variable y2 equal y[249]
|
||||
#variable z2 equal z[249]
|
||||
#variable vx2 equal vx[249]
|
||||
#variable vy2 equal vy[249]
|
||||
#variable vz2 equal vz[249]
|
||||
#variable x3 equal x[497]
|
||||
#variable y3 equal y[497]
|
||||
#variable z3 equal z[497]
|
||||
#variable vx3 equal vx[497]
|
||||
#variable vy3 equal vy[497]
|
||||
#variable vz3 equal vz[497]
|
||||
#variable x4 equal x[745]
|
||||
#variable y4 equal y[745]
|
||||
#variable z4 equal z[745]
|
||||
#variable vx4 equal vx[745]
|
||||
#variable vy4 equal vy[745]
|
||||
#variable vz4 equal vz[745]
|
||||
|
||||
#thermo_style custom v_x1 v_y1 v_z1 v_vx1 v_vy1 v_vz1 v_x2 v_y2 v_z2 v_vx2 v_vy2 v_vz2 v_x3 v_y3 v_z3 v_vx3 v_vy3 v_vz3 v_x4 v_y4 v_z4 v_x4 v_y4 v_z4
|
||||
#thermo 10
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# Write coordinates of the centre of mass and radius of gyration tensor components
|
||||
#---------------------------------------------------------------------------------
|
||||
compute centre ForceAtoms com
|
||||
compute rg ForceAtoms gyration
|
||||
thermo_style custom c_rg c_rg[1] c_rg[2] c_rg[3] c_rg[4] c_rg[5] c_rg[6] c_centre[1] c_centre[2] c_centre[3]
|
||||
thermo 1000
|
||||
|
||||
#--------------------------------------------------------------------------------
|
||||
# Define number of steps variable. Write dump files for the polymer in both LAMMPS
|
||||
# trajectory and vtk format (commented out here). Write xyz dump file
|
||||
#--------------------------------------------------------------------------------
|
||||
variable numofsteps equal 400001
|
||||
dump 1 ForceAtoms custom 500 translocationdump.lammpstrj id xu yu zu vx vy vz
|
||||
#dump 2 ForceAtoms vtk 1000 dump*.translocation.vtk id xu yu zu vx vy vz
|
||||
dump 4 WallAtoms xyz $(v_numofsteps-1) walldump.xyz
|
||||
|
||||
#restart 50000 4nmrestart.*
|
||||
|
||||
run ${numofsteps} # For 250001 steps without noise, 16 minutes on AMD Ryzen Threadripper 1950X 16-Core, 41 mintues on Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz 4-core
|
||||
488
examples/PACKAGES/latboltz/translocation/translocation.out
Normal file
488
examples/PACKAGES/latboltz/translocation/translocation.out
Normal file
@ -0,0 +1,488 @@
|
||||
LAMMPS (29 Sep 2021 - Update 1)
|
||||
Reading data file ...
|
||||
orthogonal box = (0.0000000 0.0000000 0.0000000) to (48.000000 32.000000 32.000000)
|
||||
4 by 4 by 4 MPI processor grid
|
||||
reading atoms ...
|
||||
992 atoms
|
||||
scanning bonds ...
|
||||
1 = max bonds/atom
|
||||
reading bonds ...
|
||||
31 bonds
|
||||
Finding 1-2 1-3 1-4 neighbors ...
|
||||
special bond factors lj: 0 1 1
|
||||
special bond factors coul: 0 1 1
|
||||
2 = max # of 1-2 neighbors
|
||||
2 = max # of special neighbors
|
||||
special bonds CPU = 0.007 seconds
|
||||
read_data CPU = 0.053 seconds
|
||||
Lattice spacing in x,y,z = 1.0000000 1.0000000 1.0000000
|
||||
Created 43008 atoms
|
||||
using lattice units in orthogonal box = (0.0000000 0.0000000 0.0000000) to (48.000000 32.000000 32.000000)
|
||||
create_atoms CPU = 0.004 seconds
|
||||
Deleted 851 atoms, new total = 43149
|
||||
32 atoms in group ForceAtoms
|
||||
43117 atoms in group FluidAtoms
|
||||
992 atoms in group Polymer
|
||||
42157 atoms in group WallAtoms
|
||||
Using a lattice-Boltzmann grid of 48 by 32 by 32 total grid points. (../fix_lb_fluid.cpp:477)
|
||||
Local Grid Geometry created. (../fix_lb_fluid.cpp:1023)
|
||||
First Run initialized
|
||||
create bodies CPU = 0.002 seconds
|
||||
32 rigid bodies with 992 atoms
|
||||
0.70019686 = max distance from body owner to body atom
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.18369
|
||||
ghost atom cutoff = 2.5
|
||||
binsize = 1.091845, bins = 44 30 30
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : nano
|
||||
Current step : 0
|
||||
Time step : 5e-05
|
||||
WARNING: Communication cutoff 2.5 is shorter than a bond length based estimate of 2.6825. This may lead to errors. (../comm.cpp:730)
|
||||
Per MPI rank memory allocation (min/avg/max) = 9.696 | 13.21 | 19.34 Mbytes
|
||||
c_rg c_rg[1] c_rg[2] c_rg[3] c_rg[4] c_rg[5] c_rg[6] c_centre[1] c_centre[2] c_centre[3]
|
||||
5.6791248 22.61273 5.110682 4.5290465 6.700106 3.8164024 3.4765595 12.000543 11.573384 10.635513
|
||||
5.5296724 22.405009 4.4498228 3.7224454 5.5008707 3.032453 3.0465034 11.827904 11.74858 10.838698
|
||||
5.5203014 23.097359 3.8320444 3.5443241 4.0898642 3.6212497 2.5439412 11.733889 11.623028 10.74456
|
||||
5.5743173 23.418282 3.5662245 4.0885075 2.5599966 3.831838 2.6389438 11.802165 11.600249 10.548378
|
||||
5.4710145 22.69495 3.2918761 3.9451736 2.4523656 3.8066778 2.2693201 11.9393 11.855376 10.432584
|
||||
5.7249197 25.10717 3.3525382 4.3149979 3.2367275 5.3139646 2.5816744 12.062877 11.866058 10.517373
|
||||
5.6029865 23.932976 3.1579223 4.3025592 3.6696865 5.2925377 2.4574798 11.702614 11.719522 10.694965
|
||||
5.8584265 25.726803 3.591555 5.0028025 4.3743183 6.3872181 3.0561159 11.952428 11.484249 10.689449
|
||||
5.9031743 26.839358 3.4117665 4.5963428 4.7974775 5.8755164 2.8253733 12.10545 11.305079 10.99087
|
||||
5.871274 25.566645 3.9526358 4.9525777 4.5955534 6.0483781 3.4112111 12.411365 11.160128 11.127671
|
||||
5.971686 26.102288 3.6365256 5.9222201 4.2634774 6.5495138 3.6764429 12.391364 11.066566 11.116462
|
||||
5.8409377 26.194249 3.0926214 4.8296833 3.7115072 6.099581 2.8849802 12.313864 11.045442 11.115979
|
||||
5.7364744 25.925302 2.6150435 4.366793 2.82037 5.4514289 2.2321838 12.289131 11.219661 11.147242
|
||||
5.7564899 25.275185 3.3789897 4.483002 2.7279122 5.2027203 2.3538567 12.684248 11.16195 11.369676
|
||||
5.8534787 27.157326 3.5165098 3.5893769 2.3556605 5.3231652 1.7070055 12.565231 11.069269 11.337457
|
||||
5.9408552 27.966349 3.3982116 3.9291994 1.8322283 6.180127 1.8538634 12.278692 11.177211 11.039221
|
||||
5.9991641 28.500275 3.4480936 4.0416007 1.4369922 6.2844053 2.1097089 12.235666 11.132757 10.904201
|
||||
5.9827547 28.122241 3.6720826 3.99903 1.6442854 6.5053103 2.1950703 12.375314 10.984735 11.141669
|
||||
5.7242437 24.434905 3.648822 4.6832392 1.821415 6.4501646 2.4028702 12.670431 10.977806 11.410258
|
||||
5.9013116 26.357569 3.0063195 5.4615893 2.0091238 7.228626 2.3442628 12.493765 11.119713 11.390818
|
||||
5.9102199 26.680495 3.3358499 4.9143549 1.9055918 6.4412945 2.276014 12.436401 11.018703 11.296939
|
||||
5.7574386 25.75443 3.5724979 3.8211712 1.1599229 5.4240531 1.9894834 12.410879 10.842471 11.538406
|
||||
5.7962483 26.429288 3.5017822 3.6654244 1.351938 5.3252517 2.0282575 12.612201 10.893438 11.631667
|
||||
5.8025098 26.466059 3.5624898 3.6405708 1.133526 5.0789389 1.9460322 12.544642 10.689038 11.643796
|
||||
5.7641125 25.654408 3.5345151 4.0360697 -0.83109583 5.2108762 1.6905126 12.397222 10.493385 11.696253
|
||||
5.8072019 25.679442 3.7582386 4.2859131 -1.1772031 4.1938521 2.2160298 12.296673 10.42008 11.579109
|
||||
5.7001985 24.189016 3.4982895 4.8049581 -0.79453271 5.1362216 2.1827354 12.429957 10.390496 11.673153
|
||||
5.6941506 24.093688 3.7459033 4.5837599 0.3856992 4.4633959 2.3263501 12.627162 10.503343 11.82833
|
||||
5.7372955 23.890143 4.118775 4.9076412 0.38805722 5.2566643 2.4772406 12.606965 10.572847 11.676506
|
||||
5.7428616 23.766824 3.8880982 5.3255366 -0.33675724 5.3218988 2.2539972 12.572964 10.534064 11.764667
|
||||
5.6499731 23.349011 3.8192146 4.7539703 -0.53788179 5.0455279 2.0044363 12.757771 10.584261 11.688338
|
||||
5.561088 22.635914 3.2874113 5.0023747 -0.95881516 4.9526458 1.9768975 12.886108 10.648817 11.470577
|
||||
5.5065659 22.592866 2.7699655 4.9594365 -1.0429502 4.9746672 1.8842364 12.735278 10.699875 11.654034
|
||||
5.5460253 23.096944 3.142451 4.5190012 -1.1377029 4.83551 1.9918703 12.593307 10.943414 11.675934
|
||||
5.6481034 23.145496 3.9046837 4.8508926 -0.91586514 5.3258558 2.0990811 12.351415 11.054151 11.919751
|
||||
5.5866973 22.272242 4.165557 4.7733879 0.18094082 5.5362212 2.2702355 12.209321 11.022481 12.234607
|
||||
5.6750688 22.935992 4.2668031 5.0036106 0.72144434 6.2570228 2.2604028 12.463617 11.080389 12.412865
|
||||
5.534307 22.260525 3.8054072 4.5626216 1.2420249 5.5967501 2.1125147 12.276273 10.798486 12.715741
|
||||
5.4350673 21.62159 3.3869298 4.5314364 0.28258213 5.392389 1.4911895 12.089432 10.737925 12.813536
|
||||
5.4001425 20.624748 3.7570393 4.7797519 -0.34050458 5.0506345 1.5269124 12.371365 10.573888 13.11618
|
||||
5.2688943 20.156887 3.1510052 4.4533547 -0.24239841 3.7818288 1.6612474 12.609371 10.459128 13.266976
|
||||
5.2982505 20.253797 2.7325109 5.0851506 0.97176123 4.4929627 1.8231597 12.327457 10.618473 13.130165
|
||||
5.4414697 21.984831 2.4606178 5.1641442 1.5740444 3.9075737 1.8170722 12.373628 10.567596 13.222471
|
||||
5.5707319 23.29693 2.6131294 5.1229945 2.0993935 4.6052431 1.8168365 12.240404 10.428094 13.196731
|
||||
5.5618536 23.293232 2.6635368 4.9774466 2.0107618 4.729051 2.1105567 11.893503 10.441165 13.520945
|
||||
5.3824015 21.722018 2.1221208 5.1261065 0.086745541 5.2274385 1.4581085 11.959975 10.242092 13.763089
|
||||
5.3110156 21.58712 2.1313837 4.4883826 -0.069494245 4.791078 1.0062878 11.779291 10.464336 13.80227
|
||||
5.3948376 22.671798 1.9091101 4.5233651 -0.11280005 5.0086281 0.89597813 11.614655 10.656549 13.820591
|
||||
5.5809034 24.867625 1.3844025 4.8944556 0.21411272 5.3612716 0.72590718 11.282652 10.763637 14.08913
|
||||
5.4622685 23.739255 1.24356 4.8535622 0.13581426 5.7501671 0.53683532 11.3626 10.542723 14.066682
|
||||
5.6094798 24.636207 1.6172433 5.2128136 -0.097584809 6.1198559 0.69895129 11.287109 10.558667 14.044154
|
||||
5.4165614 22.021973 1.4818718 5.8352917 0.89764161 6.0173972 1.1757975 11.480403 10.533196 14.164959
|
||||
5.3831534 20.837979 1.5941418 6.5462204 0.59835853 6.9459971 1.0858389 11.339892 10.397939 14.195947
|
||||
5.5067567 21.798831 1.9234182 6.6021193 0.76547577 6.8192549 1.2260428 11.145728 10.283724 14.190221
|
||||
5.6563775 23.811388 2.1471178 6.036101 1.0259294 6.5232685 0.83766579 10.825499 10.273792 14.129418
|
||||
5.4451604 20.863513 2.3562534 6.4300051 1.5302839 6.1671606 0.75115397 10.651819 10.39427 14.473719
|
||||
5.4776014 20.980214 2.0579606 6.9659434 0.88467458 7.2533903 0.77699513 10.557993 10.393864 14.704461
|
||||
5.5242184 21.143401 2.0891642 7.2844237 1.7135288 8.0100956 0.59126903 10.506463 10.30514 14.635687
|
||||
5.5952383 21.713905 2.0822735 7.5105131 1.6848721 8.6683589 0.54607641 10.848528 10.178865 14.6756
|
||||
5.5494815 20.976489 2.0002402 7.8200161 1.633579 8.7917235 0.60145161 10.95957 10.169286 14.679937
|
||||
5.5616629 21.359332 1.9394845 7.6332784 2.0304456 8.7008645 0.85295196 11.170357 10.225827 14.726124
|
||||
5.6176306 22.10284 1.6565778 7.7983556 1.2753605 9.1860905 0.35574937 11.390344 10.161072 14.54684
|
||||
5.5537535 21.585125 1.4320902 7.8269629 1.1066814 8.7054995 0.72662158 11.542937 9.9223535 14.301885
|
||||
5.685951 21.825553 1.3045643 9.1999215 0.33328854 9.2073799 0.16513891 11.603972 10.087952 14.327977
|
||||
5.6552814 21.351832 1.2558199 9.3745555 0.18161186 9.369701 -0.28214349 11.321008 10.189685 14.154392
|
||||
5.4788891 20.267569 1.4414745 8.309182 0.50179204 8.4903356 0.32130214 11.529341 10.149143 14.035217
|
||||
5.5277185 19.960184 1.3683852 9.2271027 0.64182784 8.9620672 0.12199186 11.843215 10.150284 14.183055
|
||||
5.4735386 19.222626 1.4986842 9.2383144 0.94509332 8.6260342 0.13055625 11.682224 9.9690019 14.513222
|
||||
5.3622072 17.73294 1.4751636 9.5451626 1.0034253 8.9118294 0.7059144 11.472562 10.038533 14.485551
|
||||
5.445355 18.117434 1.623667 9.9107902 0.49887445 9.2080383 0.64146653 11.522375 10.063749 14.279329
|
||||
5.6860226 21.21186 1.3902168 9.728777 -0.0065698438 9.468757 0.24288379 11.447441 10.116017 14.179032
|
||||
5.8623813 24.200397 0.98055759 9.1865602 -0.98259305 10.097774 -0.30057595 11.343731 10.120143 14.042191
|
||||
5.918083 25.470443 0.99775786 8.5555058 -0.65092803 10.091138 -0.21514932 11.314568 10.05212 13.954593
|
||||
5.8949972 25.325354 0.99641734 8.4292203 -0.88232382 9.4248534 -0.36658068 11.581976 9.8702451 14.126698
|
||||
5.8613678 24.763638 0.89762877 8.6943649 -0.98424992 9.497951 -0.23226015 11.717612 9.890641 14.26287
|
||||
5.6481169 22.045543 0.96243641 8.893245 -1.1760231 9.1453872 -0.11762093 11.50892 9.8690295 14.350263
|
||||
5.6562949 21.113025 0.92949571 9.9511513 -0.70449333 9.3463985 -0.11841869 11.328726 9.667841 14.51068
|
||||
5.8630888 22.122345 1.3011671 10.952298 -1.6109125 11.380566 -0.46094698 11.279572 9.63164 14.614758
|
||||
6.2211982 24.179749 1.2682256 13.255332 -1.4429027 13.612987 -0.9837265 11.469112 9.5032794 14.627161
|
||||
6.103517 22.343284 1.427368 13.482269 -2.6977126 13.121697 -2.0073484 11.551854 9.4073514 14.629993
|
||||
6.0780722 22.571697 1.605872 12.765393 -2.5684628 12.702521 -1.855223 11.524297 9.4185098 14.760376
|
||||
5.962502 22.143959 1.6757572 11.731714 -2.6991645 12.143141 -1.960977 11.954591 9.7031861 15.143472
|
||||
6.009522 22.387442 1.8937789 11.833134 -1.2518962 12.704385 -1.2184241 11.925804 9.8718705 15.120328
|
||||
5.9772771 22.328968 2.3898798 11.008994 -2.0889747 11.983275 -1.5173344 12.044732 9.8293808 15.406575
|
||||
6.0173394 22.175918 2.3466252 11.68583 -1.9704024 12.264229 -1.1229464 11.867049 9.8196821 15.617449
|
||||
5.9423929 21.320292 2.8491188 11.142623 -2.5272525 11.183194 -1.8621352 12.255629 9.860394 15.83337
|
||||
6.0326028 21.286102 2.8880379 12.218157 -2.4442987 11.736303 -1.5296422 11.889453 9.8334262 15.769088
|
||||
5.9305966 20.423582 2.8051474 11.943247 -1.1943926 10.84089 -1.1560133 11.879312 9.7294878 15.952156
|
||||
6.0095159 20.791735 2.7764089 12.546138 -0.16231381 11.664774 -0.43255458 11.921255 9.9243447 16.061464
|
||||
5.7909265 20.23263 2.8046011 10.497598 -0.357924 9.8311891 -0.84974053 11.91449 9.9599653 15.957817
|
||||
5.9535458 22.198383 3.0892096 10.157115 -0.7803564 10.143081 -0.63922509 12.123401 9.7995729 15.958638
|
||||
6.017148 23.216349 3.2195704 9.7701505 -0.062229052 9.5036187 -0.39378407 12.141769 10.000866 15.756052
|
||||
5.7719978 20.664789 2.8143916 9.8367777 -0.090860047 8.255456 -0.13459677 12.071935 10.037904 15.896415
|
||||
5.7969736 20.94815 2.4936828 10.16307 -0.18970488 8.5723129 0.11111623 12.000448 10.039701 15.729941
|
||||
6.0931379 22.685439 3.1388744 11.302016 0.14776129 10.545035 0.82659298 11.994823 9.9692422 15.850627
|
||||
6.0908023 22.382793 3.4816419 11.233437 0.30794377 11.178974 0.91797308 11.941312 10.096932 16.05492
|
||||
6.0068124 22.315239 3.4957217 10.270834 0.20688572 10.616804 1.1085389 11.88089 10.093324 16.101109
|
||||
5.8091779 20.865572 2.8553278 10.025649 -0.46471431 9.901891 0.921492 11.898457 10.194683 16.006256
|
||||
5.7449958 20.073374 2.9668487 9.9647541 -0.91800502 9.5931575 0.28462243 12.118468 10.307822 15.840047
|
||||
5.8057667 21.292122 3.0684972 9.3463081 -1.4165408 9.7095764 -9.965875e-05 12.208562 10.1271 15.786485
|
||||
5.9221849 22.476546 3.7659507 8.8297779 -2.3746353 10.027056 -0.66679466 12.373147 10.140134 15.735168
|
||||
5.8655622 23.36274 3.7416283 7.300452 -1.9272524 8.9179096 0.25274208 12.395372 9.9324316 15.693019
|
||||
5.8657028 23.20444 4.0492252 7.1528051 -1.4088542 9.1078084 0.72733394 12.285727 9.9727471 15.932284
|
||||
5.9056354 23.560504 3.8885082 7.4275173 -0.9528516 9.9844029 0.59667071 12.293186 9.9973638 15.881298
|
||||
5.9822745 23.68412 3.6541418 8.4493467 -0.70294173 10.73742 0.95132077 12.245056 9.9357141 15.788557
|
||||
6.1170066 23.972245 3.8350682 9.6104565 -0.66899901 11.938006 1.712669 12.551386 9.9274599 15.888542
|
||||
6.0685415 22.235062 4.3443123 10.247822 -0.17487089 12.014345 1.9127686 12.692021 10.177327 16.085279
|
||||
6.3062711 23.532825 3.9114638 12.324767 -0.86100725 13.732425 1.3723466 12.778698 10.19267 16.013238
|
||||
6.286743 22.308797 3.6939435 13.520397 -1.6303935 14.18453 0.71284277 12.704096 10.377825 16.118441
|
||||
6.2996683 22.651629 3.5290494 13.505143 -1.4180036 13.810581 1.2414033 12.491912 10.445359 16.288941
|
||||
6.2689126 21.484697 4.0163448 13.798223 -1.4652994 13.731222 1.5757516 12.555029 10.512051 16.061483
|
||||
6.2077192 20.516089 3.3122816 14.707408 -2.1793376 13.953602 0.60869096 12.409938 10.582601 15.854851
|
||||
6.0910235 19.242915 3.418351 14.439301 -2.1971216 13.675266 0.53652229 12.463367 10.598694 15.726619
|
||||
6.0102217 17.416333 3.6122792 15.094152 -2.2056993 13.55206 0.16358725 12.464315 10.739242 15.95421
|
||||
5.8552479 16.003832 3.9383207 14.341775 -2.0494714 12.70647 0.32213414 12.297148 10.549016 15.811077
|
||||
5.9477123 16.905378 3.7889509 14.680952 -2.5944505 13.685101 -0.63233173 12.386338 10.368115 15.568078
|
||||
5.963404 16.129743 3.2710432 16.161401 -1.9595713 14.1707 -0.15487855 12.32577 10.481339 15.502496
|
||||
5.9834384 16.510372 3.2168872 16.074276 -1.8070103 13.952048 -0.36110234 12.518451 10.499563 15.639558
|
||||
5.9146295 16.960813 3.3507703 14.671258 -1.4855644 13.560313 -0.069825611 12.525987 10.290756 15.74881
|
||||
5.8832707 15.194768 3.0337975 16.384309 -1.9260599 13.349859 -0.79684909 12.69374 10.275143 15.744744
|
||||
5.9152554 15.199265 3.3950096 16.395971 -2.3270329 13.144263 -0.75038317 13.067596 10.193678 15.830821
|
||||
6.0015313 15.002608 3.9055183 17.110252 -2.7894064 12.772595 -1.1423205 13.430829 10.172373 16.080726
|
||||
5.9710521 15.083098 4.2014134 16.368952 -2.3761106 12.698921 -0.29239549 13.39187 10.088848 16.062537
|
||||
6.0411388 16.880963 4.3720359 15.242359 -2.294307 12.873315 0.1232775 13.227758 9.831066 16.067268
|
||||
5.8855231 16.649453 4.4958005 13.494129 -2.3070573 12.048793 0.50046191 13.236055 9.6997877 16.196178
|
||||
6.0362518 18.097034 4.4106173 13.928684 -1.7195136 13.160954 1.1986336 13.306848 9.731643 16.248933
|
||||
6.1218078 19.879546 3.8871838 13.709801 -1.9243882 13.461129 0.93958566 13.261953 9.6224738 16.138043
|
||||
6.3854329 22.161468 3.8729724 14.739313 -1.2512706 15.281292 1.5369629 13.078649 9.4754532 15.970664
|
||||
6.3304675 23.23408 3.4439429 13.396796 -2.2805582 15.200603 0.27615513 13.304337 9.5616172 15.785416
|
||||
6.3398695 22.663081 3.2524941 14.27837 -3.4177824 15.357664 -0.68662241 13.245327 9.4252838 15.741389
|
||||
6.3770202 21.439503 3.6848601 15.542024 -3.3864052 15.404149 -0.4871944 13.495627 9.4517918 15.778261
|
||||
6.2742766 21.152966 3.4510675 14.762513 -2.3067362 14.953899 0.42717689 13.34497 9.3632442 15.572433
|
||||
6.3203033 21.529448 3.9546453 14.46214 -3.1578015 15.231443 -0.1714276 13.457982 9.1650625 15.498483
|
||||
6.3185622 21.197494 4.5965437 14.130191 -3.4632577 15.008416 -0.13210323 13.826597 9.2197382 15.729906
|
||||
6.3322082 18.106908 5.356868 16.633085 -2.8004177 14.895529 0.69570095 13.850479 9.2935751 15.940885
|
||||
6.2108307 16.940863 4.6837401 16.949815 -1.9961177 14.244505 1.2755976 14.093402 9.2340228 16.043672
|
||||
6.3006663 16.597857 5.0930375 18.007502 -1.7004164 14.826258 1.8232759 14.144255 9.7282581 16.0193
|
||||
6.3673778 17.464131 4.4116496 18.66772 -0.51459466 15.675172 2.5292634 14.163314 9.8203231 15.988875
|
||||
6.408183 16.833386 3.9184255 20.312998 -0.32500965 16.012664 2.5933555 14.201389 9.9757058 15.958177
|
||||
6.5225926 17.152234 4.018992 21.372988 -1.3026737 16.503292 1.9290231 14.096197 9.9596835 15.80109
|
||||
6.5212597 18.09637 3.6154421 20.815015 -2.0269011 17.000191 0.057275012 14.004866 10.060289 15.740208
|
||||
6.4400683 16.402527 3.3650147 21.706938 -1.552906 16.376746 0.47549703 14.385189 10.102273 15.863806
|
||||
6.3302808 14.687544 2.9633741 22.421537 -1.3718646 15.668956 0.59878961 14.611268 10.168588 15.757436
|
||||
6.386608 15.037738 2.5865041 23.16452 -0.94488748 16.160508 1.1302704 14.434105 10.171901 15.841546
|
||||
6.3908897 14.276389 2.4055041 24.161578 -1.3996929 16.191603 0.37932572 14.600044 9.8706006 15.752448
|
||||
6.3697782 13.87164 2.4100622 24.292371 -1.7929773 15.524539 0.2172222 14.694266 9.8526205 15.890105
|
||||
6.4395057 14.414189 1.7855626 25.267482 -2.3008012 15.932157 -0.65144574 14.546356 10.015609 15.996047
|
||||
6.2603753 12.598017 2.3971997 24.197082 -2.8354471 14.742477 -1.3369868 14.7354 9.985335 16.060015
|
||||
6.4165706 11.910589 3.0611977 26.200592 -2.2918036 15.280825 -0.52745956 14.661131 10.115577 16.222497
|
||||
6.306674 11.462269 3.2687164 25.043151 -1.75463 14.500827 0.63221122 14.325373 10.166885 16.299802
|
||||
6.3023314 11.161959 3.0413571 25.516064 -1.4332415 14.422419 1.1865764 14.362565 10.158493 16.482422
|
||||
6.1833739 11.436232 2.723159 24.074722 -1.6629428 13.915882 0.73412321 14.466715 10.151951 16.607918
|
||||
6.1229213 10.467705 3.1889083 23.833552 -2.3682283 12.89549 0.37683745 14.414884 10.012842 16.549792
|
||||
6.1338982 10.779987 2.9962129 23.848507 -2.33973 13.121829 0.29187704 14.455314 10.221688 16.363728
|
||||
6.207075 9.9666739 2.7999099 25.761196 -2.5502485 12.872255 -0.27664201 14.784215 10.242256 16.12127
|
||||
6.0702059 8.6358571 2.9997368 25.211806 -2.1618491 12.187413 -0.087785784 14.91432 10.390415 15.999982
|
||||
6.0523759 8.9760031 3.0690988 24.586153 -2.1838366 12.450669 -0.42313767 14.972695 10.631871 16.146676
|
||||
6.1564473 9.3752169 2.8805472 25.64608 -1.6447038 12.912656 0.39433901 15.105303 10.515706 16.153935
|
||||
6.2773098 9.7358364 2.9681155 26.700666 -1.7948525 13.534158 -0.54920704 14.911808 10.432406 16.17376
|
||||
6.0751562 7.9183085 3.5678435 25.421371 -1.8815837 11.968021 -1.3886088 14.938639 10.52065 15.930673
|
||||
6.2344419 7.6800088 4.325724 26.862533 -1.9283249 12.441893 -1.7063616 14.846019 10.430839 16.008164
|
||||
6.1792161 7.4511557 4.7802062 25.951349 -2.3638285 11.586895 -1.8365032 14.999916 10.443485 15.916129
|
||||
6.2813206 7.5153292 4.5580299 27.381629 -2.1400841 11.786855 -1.1483079 15.055667 10.534509 15.857042
|
||||
6.1512297 7.6075011 4.3576975 25.872429 -2.1030881 11.528554 -0.51899062 15.058771 10.628059 15.665245
|
||||
6.1438363 6.7238596 4.6461073 26.376758 -1.6505692 10.822202 -0.6928125 15.347615 10.649769 15.732473
|
||||
6.2408638 7.5539314 4.5421443 26.852305 -0.95341389 11.754742 -0.73861692 15.256843 10.806161 15.56695
|
||||
6.3699929 8.7465611 4.7263849 27.103864 -0.77428405 12.880378 -0.42052577 15.447042 10.907062 15.480314
|
||||
6.3597726 8.2079642 5.4569061 26.781837 -1.4689718 12.52424 -1.9395975 15.577803 10.952828 15.422466
|
||||
6.2023004 7.2958014 5.1337932 26.038936 -1.7611789 11.383645 -2.6935308 15.657302 10.995856 15.390552
|
||||
6.1711797 6.9118338 5.1915695 25.980056 -2.0730073 10.98972 -3.1637958 15.90469 10.995496 15.314447
|
||||
6.3937986 7.431361 5.965689 27.483611 -2.4879694 11.982918 -4.1680513 15.967033 11.020757 15.09124
|
||||
6.2149847 7.2703065 6.275248 25.080481 -2.0287156 11.129433 -3.4708264 16.102517 11.062335 15.210597
|
||||
6.1696949 6.2231093 7.3455985 24.496428 -2.3136898 9.5965913 -3.9526192 16.209103 11.195043 14.918265
|
||||
6.1562202 5.8868293 7.5351084 24.47711 -3.1240045 9.372071 -5.4183088 16.220157 11.352938 14.725767
|
||||
6.2402426 5.9772121 7.8967775 25.066638 -3.4697705 9.9763732 -7.0354906 16.402733 11.551754 14.668405
|
||||
6.3723832 7.2482029 7.765165 25.5939 -3.6208001 11.484568 -6.7436958 16.291683 11.420876 14.662261
|
||||
6.4434853 7.4752495 9.2523431 24.79091 -4.3126465 11.295442 -8.0142333 16.186314 11.418674 14.82011
|
||||
6.460045 7.8066096 9.0901379 24.835434 -4.5414318 11.401124 -8.7477261 15.905245 11.702483 14.856366
|
||||
6.4777501 7.3536398 10.302625 24.304982 -4.3906491 11.032309 -9.497077 15.671399 12.012608 14.600919
|
||||
6.4625629 8.0547606 10.400726 23.309233 -4.5270224 11.314232 -9.0920444 15.575683 11.742348 14.652748
|
||||
6.5472578 8.5979416 10.744796 23.523847 -5.217515 11.967194 -8.7234345 15.568657 11.831196 14.843638
|
||||
6.483128 7.3225446 10.626526 24.081879 -5.1260241 10.667157 -9.9746781 15.531111 12.023597 14.837051
|
||||
6.4745722 7.5181455 10.391375 24.010564 -4.7043915 10.536421 -10.54499 15.558313 12.07602 15.012837
|
||||
6.5058473 7.59532 9.8980494 24.832679 -4.5149868 11.143523 -9.7701495 15.302399 12.325809 15.118685
|
||||
6.5820869 8.7344427 10.107609 24.481817 -5.39183 12.768879 -9.9238833 15.35687 12.305993 15.224731
|
||||
6.4196907 9.5582308 8.986383 22.667815 -5.2686438 12.754618 -8.251982 15.540927 12.394448 15.177949
|
||||
6.2667251 10.57336 7.562455 21.136029 -5.0801479 12.860054 -6.3698064 15.707946 12.390522 15.342436
|
||||
6.2210145 10.745764 8.3384163 19.616841 -5.3518597 12.34241 -6.0538822 15.758016 12.439219 15.474505
|
||||
6.1859098 9.816746 8.8680281 19.580706 -5.3274802 11.600188 -6.7361501 15.956688 12.159898 15.379191
|
||||
6.0834764 10.550891 8.8719323 17.585862 -5.4095063 11.418432 -6.5208576 15.931197 11.985049 15.490665
|
||||
6.0271667 10.77485 8.7062843 16.845604 -5.3706097 10.878896 -6.0815843 16.025605 11.982944 15.935627
|
||||
5.9706225 10.985243 8.9220306 15.741059 -5.84133 10.420067 -6.1977613 16.001564 11.986809 16.149832
|
||||
5.8923551 10.099423 8.8351356 15.78529 -5.5784361 10.067834 -6.6388141 15.962896 11.971509 16.445603
|
||||
5.8502333 10.461253 8.7593084 15.004669 -5.6588876 9.756455 -6.3146928 16.03821 12.179833 16.293762
|
||||
5.7932174 11.006309 8.5207484 14.03431 -5.7324947 9.7685968 -5.4418912 16.279898 12.200928 16.394535
|
||||
5.7778107 11.749514 8.4718801 13.161702 -6.119698 9.1985355 -5.545219 16.190303 12.409011 16.685802
|
||||
5.5990683 10.903489 8.4676654 11.978411 -5.799984 8.2184816 -5.640045 16.062899 12.578583 16.853686
|
||||
5.7166149 11.268655 9.6170035 11.794028 -7.0067193 8.248647 -6.2288769 15.989285 12.93967 16.839929
|
||||
5.7571403 10.573961 11.677813 10.89289 -7.9052968 8.0056415 -6.599601 15.841661 13.246138 16.541358
|
||||
5.5339534 9.2630755 10.672925 10.688639 -6.6200363 7.1320515 -6.3072047 16.047803 13.420799 16.440569
|
||||
5.5635287 9.3003027 10.091805 11.560744 -6.4505576 7.4493351 -6.2391653 16.05058 13.393241 16.538355
|
||||
5.5075192 9.6775628 10.000739 10.654466 -6.5511729 6.9781926 -5.7145704 16.15796 13.354355 16.786435
|
||||
5.510599 10.030805 9.1172295 11.218667 -5.9903776 7.8656123 -5.4658137 16.132456 13.606624 16.962778
|
||||
5.7287307 11.371047 10.0497 11.397608 -7.4202878 8.5035625 -5.854612 16.085273 13.830793 17.177867
|
||||
5.6735535 11.05689 11.361427 9.7708924 -7.3808545 7.4019314 -5.6203774 16.100107 13.992343 17.074907
|
||||
5.5598011 10.372663 10.634026 9.9046995 -6.5910075 7.0062979 -5.533723 16.030822 13.955192 17.229402
|
||||
5.4518091 9.9369368 10.514736 9.2705496 -7.0466019 6.480619 -5.9067738 16.212653 13.610704 17.345424
|
||||
5.3105131 8.8763035 10.289924 9.0353216 -6.490449 5.4842769 -5.5852948 16.279828 13.707371 17.435699
|
||||
5.3610445 9.4458423 10.257481 9.037475 -6.8565504 5.8156056 -5.1781706 16.331042 13.684536 17.496624
|
||||
5.3028829 9.2097478 9.6697811 9.2410386 -6.8523634 5.4086306 -4.6628602 16.280845 13.496011 17.531117
|
||||
5.2609838 9.1394783 9.4053013 9.1331707 -6.5709204 5.3563922 -5.0961062 16.406674 13.643843 17.667616
|
||||
5.2367589 9.1758546 9.7883808 8.459408 -6.2842198 5.3909264 -4.9131794 16.45017 13.634924 17.759822
|
||||
5.3774294 10.044653 9.2658441 9.6062495 -6.8252669 6.1518133 -5.2083987 16.428771 13.786793 17.67478
|
||||
5.271578 10.095785 9.0857648 8.6079852 -6.6471619 5.8272615 -4.2347145 16.301673 13.775954 17.406353
|
||||
5.243955 10.892352 8.9179226 7.688789 -6.7209204 5.5212971 -4.0113968 16.263814 13.827804 17.388212
|
||||
5.1278228 10.932904 8.0573483 7.3043147 -6.7853574 5.1761932 -4.2710494 16.1953 13.984406 17.519278
|
||||
5.1633382 11.413362 8.2939355 6.9527636 -6.8681208 5.4766365 -4.5328722 16.089803 13.919141 17.460337
|
||||
5.2544044 11.70579 8.566903 7.3360725 -7.3359144 5.8601006 -4.8659205 16.083476 13.673683 17.424173
|
||||
5.3647212 11.961254 9.7848808 7.0340988 -8.298621 5.822105 -5.5200712 15.847977 13.739669 17.221002
|
||||
5.5774655 12.863952 11.478809 6.7653602 -9.924226 6.6678228 -6.2009038 15.889245 13.797311 17.175491
|
||||
5.7848534 13.497339 12.837025 7.1301645 -11.2346 7.309595 -7.0856186 16.165169 13.835651 17.410337
|
||||
5.835033 12.966855 14.049022 7.0317337 -11.57212 7.1747367 -7.4189659 16.329895 13.896853 17.287388
|
||||
5.8112222 12.504605 14.037687 7.2280123 -11.040751 7.0780626 -7.2192206 16.533029 13.859178 17.059143
|
||||
5.8883344 13.005374 14.823982 6.8431257 -11.606312 6.5698247 -6.8094035 16.429598 14.053837 16.789665
|
||||
5.8359582 12.410701 14.320887 7.3268203 -11.355158 6.7011251 -7.0112508 16.419452 13.991466 16.516136
|
||||
5.8135255 12.505174 15.148437 6.1434678 -11.418024 5.9480048 -6.0244757 16.498523 14.117015 16.52141
|
||||
5.8287759 12.475237 15.394155 6.1052368 -11.805096 6.2263399 -6.1793219 16.573864 14.247214 16.660249
|
||||
5.9692352 13.394768 15.676531 6.5604708 -11.926424 7.1162665 -6.5965125 16.440193 14.085015 16.795194
|
||||
5.9811095 14.494823 15.000263 6.2785851 -11.722062 7.2726158 -7.3122629 16.345825 14.326338 16.788731
|
||||
5.9350284 13.259762 14.652529 7.3122722 -10.781618 8.0257254 -7.6630571 16.504888 14.234907 16.851643
|
||||
5.9077132 13.314606 13.825977 7.760493 -10.108228 8.3560588 -7.509917 16.483208 14.180923 17.022707
|
||||
5.903215 14.492016 13.435719 6.9202128 -10.479345 8.2242389 -7.0971293 16.506615 13.942976 17.083275
|
||||
5.7116033 12.836586 12.595218 7.1906081 -9.656871 7.8562602 -7.1790399 16.475313 13.845482 17.030943
|
||||
5.5276808 13.22032 10.830218 6.5047166 -9.2400219 7.4862663 -6.261564 16.440373 14.027025 16.869497
|
||||
5.7150771 14.869337 10.500296 7.2924727 -9.4648046 8.4324243 -6.5044993 16.407279 14.092687 17.057818
|
||||
5.8825362 15.661002 11.144739 7.7984909 -10.054136 8.8024571 -6.9296281 16.372233 14.17038 17.01721
|
||||
5.8703947 15.33064 11.376803 7.7540899 -10.698101 8.6568946 -7.2448225 16.435451 14.062265 17.155875
|
||||
5.764216 14.785132 11.683078 6.7579753 -10.410649 7.99567 -6.7649227 16.294856 14.151284 16.833867
|
||||
5.7262626 15.708784 10.268024 6.8132741 -9.7479953 8.1073549 -6.4329889 16.38963 14.183827 16.748313
|
||||
5.785457 16.14231 10.720243 6.6089592 -9.6492741 8.3408478 -6.225244 16.139971 14.277026 16.441623
|
||||
5.7831211 16.233573 10.907288 6.3036282 -9.4385494 7.8786122 -5.2619176 15.953414 14.40238 16.078696
|
||||
5.7175667 15.973096 10.885187 5.8322858 -9.3311972 7.4277153 -4.7224572 15.928816 14.336006 16.032907
|
||||
5.6762422 16.128304 10.322039 5.769383 -9.6467137 7.1361406 -4.2237499 15.969662 14.390043 16.023341
|
||||
5.6790408 17.257419 9.5791304 5.4149549 -9.3508023 6.8370934 -3.143562 15.954635 14.625819 15.882812
|
||||
5.826402 19.064094 9.646317 5.2365496 -9.7121507 7.1388968 -2.6132692 15.907478 14.620232 15.989997
|
||||
6.0924383 21.706401 9.9457573 5.4656463 -10.087234 8.5319069 -3.1604921 15.856547 14.826242 16.114269
|
||||
5.8465253 20.75827 8.5306371 4.89295 -8.4847143 8.135735 -2.7049793 16.082063 14.955376 16.043555
|
||||
5.6215157 19.492433 7.6161803 4.492826 -7.5314803 7.4463474 -2.6711935 15.978139 15.087426 16.049492
|
||||
5.5967381 19.660436 6.9976437 4.6653976 -6.6420837 7.5270132 -2.7678397 16.02646 15.284484 15.993545
|
||||
5.511678 19.927679 6.1038153 4.3471004 -5.8289485 6.88311 -2.2816692 15.84587 15.547291 15.680537
|
||||
5.4780878 20.424153 6.1296804 3.4556125 -5.7367859 6.168477 -1.8217809 15.742863 15.483589 15.745507
|
||||
5.4758211 20.330629 6.09419 3.5597979 -5.7358672 6.2220705 -1.4376349 15.949835 15.534271 15.993678
|
||||
5.2729608 19.117604 5.55047 3.1360418 -5.2602191 5.3907817 -0.93139164 15.798536 15.41334 16.296213
|
||||
5.4066479 21.398038 4.9991011 2.8347029 -4.8479486 5.206114 -0.50610023 15.86304 15.429738 16.512504
|
||||
5.441755 21.617797 5.659365 2.3355356 -5.961735 4.6302272 -0.72977775 15.813723 15.712412 16.506809
|
||||
5.7202175 23.711942 5.9623456 3.0466007 -6.1085248 6.0000527 -0.93289256 15.894001 15.881179 16.527676
|
||||
5.7368795 23.945329 5.6735024 3.2929547 -5.6060966 6.2106471 -0.74497538 16.061111 15.970952 16.370613
|
||||
5.6495488 24.006663 4.7468148 3.1639236 -5.1793756 5.6821901 -0.81032624 15.796142 16.145639 16.466949
|
||||
5.5939342 23.275679 5.271768 2.7446528 -5.7300112 5.1730698 -1.2107349 15.729561 16.249974 16.457102
|
||||
5.7425848 25.186876 4.9619667 2.8284378 -6.0985173 5.139422 -1.214785 15.989171 16.540401 16.704536
|
||||
5.6612275 23.352351 5.3497709 3.3473746 -5.8553322 5.4940876 -0.96451436 15.958304 16.378975 16.760569
|
||||
5.7674324 23.160912 6.4085684 3.693796 -5.7023785 6.3012749 -1.069243 16.158905 16.347021 16.797318
|
||||
5.5801318 21.143398 6.3609125 3.63356 -6.4210115 5.5621176 -1.2940504 16.349065 16.384412 17.10306
|
||||
5.5773402 20.783758 6.737318 3.585647 -6.924001 4.9918691 -0.79943774 16.366992 16.51269 17.105981
|
||||
5.684201 21.749552 6.6669742 3.8936142 -7.2295975 5.6082572 -1.3412819 16.311826 16.57439 17.001747
|
||||
5.6127015 21.505863 5.5438849 4.4526702 -6.3647761 5.9814202 -1.3661416 16.215903 16.555573 16.956272
|
||||
5.6401502 22.161029 4.8054549 4.8448102 -5.561779 6.524125 -1.142001 16.474245 16.567552 16.956738
|
||||
5.7092689 22.328154 4.9481563 5.3194416 -5.4176601 7.1919393 -1.191178 16.5441 16.570397 16.846804
|
||||
5.797597 23.179548 5.1415325 5.29105 -5.0300181 7.7617632 -1.1169835 16.348087 16.286533 16.907818
|
||||
5.995093 25.569207 4.9809579 5.3909751 -5.6848147 8.4579815 -0.91909737 16.079028 16.132571 16.795598
|
||||
5.9348179 25.527175 4.7514497 4.9434381 -5.134042 7.9224742 -0.56446559 16.040463 16.20114 16.913737
|
||||
5.9027126 23.564506 5.0612072 6.2163037 -4.3982642 8.5537664 -0.029144912 16.008343 16.169362 16.89208
|
||||
5.9633921 23.802733 4.7747997 6.984513 -4.628952 9.0124952 0.12532294 15.807381 16.16799 16.950541
|
||||
6.1867908 25.772111 4.2265449 8.277724 -3.8985525 11.288384 0.034973021 15.867016 16.182462 17.033093
|
||||
6.207372 26.266701 3.943529 8.3212373 -4.0682522 11.23538 -0.047492834 15.870707 16.090301 17.052838
|
||||
6.2134708 26.976771 3.7741123 7.8563368 -5.2558696 10.464963 -0.27934473 16.279091 16.230659 17.105529
|
||||
6.1676387 25.542318 4.0500689 8.4473804 -5.0529231 10.530898 -0.28771364 16.36413 16.436549 17.1944
|
||||
6.2094436 24.843313 4.3163559 9.3975218 -5.8153663 11.438499 -0.84409828 16.404832 16.624877 17.422877
|
||||
6.0706081 23.058425 3.8150626 9.9787961 -5.0512258 10.996391 -0.75766354 16.448462 16.67916 17.500419
|
||||
6.0961494 23.714468 3.5115598 9.9370088 -4.663351 11.610344 -0.5784744 16.291852 16.453541 17.557589
|
||||
6.1178466 24.096564 3.5811377 9.7503446 -5.0841699 11.44511 -1.035818 16.350977 16.295448 17.479614
|
||||
6.1566006 25.172194 3.8948173 8.8367206 -6.1273547 11.058599 -1.359194 16.354174 16.181997 17.218925
|
||||
6.237932 26.96754 3.8890813 8.0551741 -5.7983355 10.996231 -1.2130202 16.261553 16.114478 17.099237
|
||||
6.1922951 26.893723 3.4056062 8.0451901 -5.026978 10.481237 -0.83482516 16.364736 15.988118 17.015587
|
||||
6.2827852 28.263514 3.5599473 7.6499288 -5.7959286 10.899793 -1.1825891 16.466086 16.11376 17.046831
|
||||
6.1712954 26.450642 3.5068734 8.1273715 -5.630614 10.804319 -1.2870435 16.556845 16.055189 17.067815
|
||||
6.138582 25.677619 4.3083519 7.6962184 -6.4851933 10.400633 -1.5485876 16.664784 16.208751 17.070138
|
||||
6.2340525 27.094719 4.6794998 7.0891912 -7.5124328 10.416896 -1.8840134 16.641283 16.263648 17.112528
|
||||
6.4079209 26.720461 4.7790682 9.5619204 -8.1291925 12.369812 -2.5733734 16.559331 16.036555 17.147572
|
||||
6.4300657 27.317916 5.4901453 8.5376842 -9.2470077 12.246962 -2.8855574 16.542536 15.88458 17.098137
|
||||
6.5517643 28.877671 6.5246122 7.523332 -11.02762 11.899212 -3.5943723 16.680194 15.776602 17.318073
|
||||
6.4489667 28.585306 5.8623224 7.1415422 -10.250958 11.407539 -3.3205181 16.740221 15.95636 17.270834
|
||||
6.1780499 25.939612 5.6814589 6.5472299 -9.6741186 9.9427257 -3.0418964 16.616712 15.934624 17.044713
|
||||
6.1442365 25.218703 5.8851798 6.6477591 -9.3941294 10.202308 -3.0337898 16.783448 16.208261 16.819308
|
||||
6.2002947 26.436904 5.2649524 6.7417976 -8.9608786 10.794734 -2.8314939 16.753721 16.393427 16.934071
|
||||
6.1023958 24.753277 5.7449215 6.741036 -8.9394603 10.887318 -3.4654541 16.841151 16.528704 16.967895
|
||||
6.4706341 27.187763 6.5991071 8.0822352 -10.853767 13.164671 -5.1852157 16.93495 16.719349 17.323208
|
||||
6.3805346 27.134825 5.7599629 7.8164337 -9.6802387 12.397818 -4.6695043 16.973211 16.803282 17.491511
|
||||
6.3757136 27.102645 6.7185198 6.8285591 -10.622473 11.379311 -4.8283608 17.23643 16.777418 17.635
|
||||
6.3879163 28.633074 5.7702175 6.4021839 -9.9519285 11.28733 -4.1748398 17.027704 16.889915 17.715266
|
||||
6.2612855 27.256754 5.4785084 6.4684339 -9.0888708 11.242858 -4.2694804 17.107341 16.859271 17.63844
|
||||
6.299312 27.873052 5.3289192 6.4793606 -9.0267711 11.387876 -4.0919645 17.305467 16.911771 17.427675
|
||||
6.2289237 27.326855 5.4264335 6.0462019 -9.3223078 10.416802 -3.9863206 17.396619 16.901055 17.413319
|
||||
6.2473459 27.200332 5.8324397 5.9965584 -10.211428 10.338958 -4.299193 17.495537 16.890711 17.347725
|
||||
6.2766326 26.883091 5.6089996 6.9040261 -10.015189 10.953918 -4.6146601 17.455984 17.035668 17.174964
|
||||
6.3194426 27.194483 5.6584676 7.0824043 -10.193287 11.542445 -4.8781821 17.660824 17.058122 17.339121
|
||||
6.345308 28.284305 5.4068998 6.5717287 -9.9723279 11.450394 -4.7371912 17.498544 16.950749 17.202711
|
||||
6.2452671 27.623267 4.5226046 6.8574901 -8.5053598 11.993833 -4.2989181 17.644952 17.340005 17.030892
|
||||
6.4935998 31.828498 3.9256257 6.4127151 -8.6018524 12.347081 -3.6300015 17.564825 17.509345 16.988147
|
||||
6.7395483 34.365637 4.9441239 6.1117506 -10.584344 12.608532 -3.8751643 17.622426 17.442024 16.961517
|
||||
6.9320731 36.487873 5.2885804 6.2771845 -11.739681 12.645393 -4.3287581 17.764176 17.058877 16.904156
|
||||
7.0005171 38.403772 5.8303742 4.7730936 -12.658945 10.325362 -3.8374444 18.034783 16.97029 16.977488
|
||||
6.9507198 39.003952 4.8946178 4.4139355 -11.110956 10.151103 -3.2220506 18.108805 16.6043 17.086064
|
||||
6.8815841 39.138848 4.0348963 4.1824549 -9.0307892 10.015326 -2.6443438 18.236128 16.640815 17.114922
|
||||
6.882232 39.971484 3.1577729 4.2358598 -7.8287034 9.7553301 -2.0721431 18.223484 16.509923 17.262761
|
||||
6.9998358 40.624993 3.8565393 4.516169 -9.7890545 10.180717 -2.6275677 18.281929 16.345226 17.15968
|
||||
6.8949988 38.871237 3.8169004 4.8528717 -9.4694675 10.339985 -2.6477495 18.492426 16.257672 17.131866
|
||||
6.8405287 37.572857 3.8047352 5.4152407 -9.4559212 10.777587 -3.0741361 18.379265 16.214 16.926726
|
||||
6.7982337 36.63002 4.0567185 5.5292428 -9.4754516 10.514292 -2.8668269 18.46395 16.18603 16.984062
|
||||
6.7120737 35.058323 4.2654944 5.7281157 -9.72569 9.8586513 -2.6187517 18.501364 16.296709 16.917798
|
||||
6.6009399 33.762693 4.4612998 5.3484142 -9.9751926 8.5961687 -2.0531827 18.611888 16.498793 16.849322
|
||||
6.6023724 33.948277 4.3554627 5.2875812 -9.8243151 8.7062364 -1.8272355 18.889235 16.505505 16.599137
|
||||
6.6780857 35.344677 3.7712228 5.480929 -9.1700085 8.7759785 -1.6743704 18.97122 16.458453 16.740592
|
||||
6.8694391 37.17157 3.8044073 6.2132159 -9.3959083 9.877792 -1.9080998 18.88999 16.491255 16.687531
|
||||
6.8110994 37.183898 3.0145004 6.1926766 -8.4643654 9.7149739 -1.6899805 18.886352 16.632166 16.585902
|
||||
6.7368298 36.893925 2.5850605 5.90589 -7.287065 10.138336 -1.4314388 19.083565 16.547704 16.573429
|
||||
6.681602 37.003865 2.4785083 5.1614322 -7.2524982 8.6298859 -1.4116061 19.160426 16.706189 16.537117
|
||||
6.7214749 38.227249 2.0876872 4.8632887 -6.486242 8.292037 -1.1085249 19.264285 16.811441 16.569642
|
||||
6.7906595 39.590566 2.003553 4.5189369 -6.3877652 8.1569468 -0.96990154 19.568939 17.12388 16.439813
|
||||
6.9825421 42.064261 1.6324333 5.0591996 -5.3460807 8.8261841 -0.67124335 19.879388 17.119246 16.383994
|
||||
7.1140473 43.847742 1.5186192 5.243308 -5.2887519 9.3080416 -0.67694248 20.107193 17.20352 16.279553
|
||||
7.1941395 44.987299 1.8067519 4.9615922 -6.3356156 9.7180954 -1.1612817 20.28777 17.125718 16.108976
|
||||
7.2887783 46.379714 1.5557102 5.1908645 -6.4322837 10.690947 -1.4689741 20.722572 16.994585 15.851479
|
||||
7.3717223 48.09482 1.3874085 4.8600604 -6.3212069 10.637209 -1.4412978 21.145149 17.10172 15.626257
|
||||
7.3103292 47.259496 1.3153081 4.8661097 -6.1167747 10.684898 -1.4517047 21.428737 17.11633 15.522888
|
||||
7.3474083 48.062136 1.2368688 4.6854041 -5.6025782 11.183963 -1.4659443 21.751501 17.021464 15.227136
|
||||
7.3974278 49.792552 0.91072848 4.018657 -4.0765455 11.022114 -1.0871425 22.192155 16.813026 15.026038
|
||||
7.517569 52.091339 0.84745921 3.5750462 -4.2468388 10.727176 -1.0474924 22.730902 16.677036 14.980871
|
||||
7.6892478 54.263113 1.0592439 3.8021738 -5.1057643 11.818169 -1.4872384 23.316002 16.603974 14.850614
|
||||
7.7872283 56.561426 0.84791834 3.2315808 -4.2529665 10.696077 -1.1478533 23.634655 16.489411 14.936932
|
||||
7.7547771 56.201611 0.87067007 3.0642868 -4.2366377 10.131149 -0.95264498 24.163744 16.54509 14.977185
|
||||
8.0531769 61.107193 0.8690226 2.8774426 -4.644315 10.929799 -0.94163247 24.68465 16.571341 14.924763
|
||||
8.3310719 65.787139 0.74155575 2.8780643 -4.5926971 11.449945 -0.98674983 25.293252 16.500118 14.981323
|
||||
8.642708 71.198421 0.5590228 2.9389584 -4.1285672 12.599427 -0.92098043 25.76361 16.40755 14.923297
|
||||
8.8281194 74.787989 0.57383779 2.5738649 -4.6176409 12.215755 -0.92509188 26.434103 16.447768 14.965872
|
||||
9.0576712 78.737429 0.69514572 2.6088322 -5.6897098 12.978088 -1.1362365 27.012606 16.536097 14.88788
|
||||
9.2009546 81.167026 0.82443581 2.6661034 -6.6858174 13.205957 -1.3008143 27.626219 16.536581 14.96208
|
||||
9.2666904 82.050263 0.7734027 3.047885 -6.1976828 14.376645 -1.2400628 28.324969 16.488721 14.813316
|
||||
9.148695 80.122762 0.87475577 2.701102 -6.3325063 13.21717 -1.2745178 29.145946 16.473304 14.98538
|
||||
9.001243 77.397716 0.94205086 2.6826087 -6.5634383 12.728307 -1.3523873 29.819452 16.552882 15.018783
|
||||
9.0777055 78.466989 1.0113835 2.9263656 -6.8428264 13.079194 -1.4744992 30.300781 16.494792 15.048552
|
||||
9.1009918 79.260722 0.9807463 2.5865839 -6.9312724 12.560048 -1.3522864 30.999146 16.471303 15.124403
|
||||
9.0922708 79.831399 0.87867232 1.9593164 -5.683661 10.699977 -1.0353506 31.615948 16.294124 15.18771
|
||||
8.9936285 78.360142 0.78531808 1.7398937 -5.6675013 9.909593 -0.91667657 32.113631 16.251319 15.191646
|
||||
8.9309778 76.82727 0.73333331 2.2017606 -5.1030576 11.366822 -0.97500449 32.507368 16.223113 15.275399
|
||||
8.8207322 75.200264 0.62545687 1.9795954 -3.5875432 10.549107 -0.67108507 33.167808 16.17782 15.14988
|
||||
8.6517106 71.668227 0.74290008 2.4409698 -3.9392699 11.85099 -0.82153294 33.605742 16.23708 15.409707
|
||||
8.6365567 71.615778 0.6557002 2.318633 -2.5495576 11.358758 -0.63414526 34.331039 16.120944 15.587085
|
||||
8.4130814 67.865585 0.754676 2.1596775 -1.4350363 10.614042 -0.3239519 35.000501 16.175439 15.699587
|
||||
8.25002 64.653951 0.759895 2.6489843 -0.047026072 11.681153 -0.13402085 35.45585 16.237441 15.745117
|
||||
8.075486 62.03899 0.84399975 2.3304839 -1.559837 10.460056 -0.25112144 36.185943 16.115537 16.064387
|
||||
7.8366364 58.016635 0.96063734 2.4355976 -2.4951475 10.236931 -0.45638427 36.580625 15.876486 16.081116
|
||||
7.6720504 54.91855 1.2311355 2.7106709 -3.5013889 9.7007273 -0.66989632 37.007795 15.653434 16.295477
|
||||
7.5459026 51.853751 1.7389758 3.3479194 -5.6826188 10.993022 -1.2532598 37.378257 15.3961 16.447817
|
||||
7.2539465 47.14327 2.2098583 3.2666111 -5.2847693 10.216356 -1.1334835 37.700742 15.603925 16.685365
|
||||
6.9312041 42.558067 2.0941643 3.389359 -5.1200095 9.2432158 -1.1926306 37.97708 15.532295 16.728937
|
||||
6.6532233 38.946916 1.7705815 3.5478824 -4.0065169 7.8359509 -0.83714023 38.405624 15.528978 16.743439
|
||||
6.4133222 35.120916 1.8588526 4.1509331 -3.0514447 8.3796131 -0.92728331 38.703448 15.549252 17.02516
|
||||
6.194238 32.712424 1.9939435 3.6622163 -2.9701683 7.2047379 -0.83562437 39.394386 15.666429 17.049729
|
||||
5.8186585 27.776333 2.3363751 3.744079 -2.9891432 5.6379939 -0.70461591 39.752658 15.579909 16.96213
|
||||
5.5897628 24.780413 2.8056262 3.6594096 -3.5134633 4.8264986 -0.83946107 40.102769 15.377182 16.947572
|
||||
5.3769903 22.280115 2.7709055 3.8610039 -3.2364022 5.1813564 -0.89638947 40.62343 15.506131 17.106031
|
||||
5.1063868 19.312622 2.7094113 4.0531534 -2.8471083 5.2213352 -0.75324965 40.782169 15.678787 17.244642
|
||||
4.8077716 16.355397 2.5693106 4.1899599 -2.9764819 4.4411865 -0.37353275 41.153908 15.362181 17.131944
|
||||
4.6501775 13.736158 2.7819846 5.1060086 -2.6188497 4.2731016 -0.30895652 41.43999 15.550215 17.143943
|
||||
4.4679179 11.9096 3.1313145 4.9213756 -2.2525965 3.2760982 0.024244645 41.952085 15.610097 16.767273
|
||||
4.3970823 10.284487 3.4378841 5.6119617 -2.8529271 3.0105925 -0.28501613 42.27667 15.387805 16.667092
|
||||
4.1183382 7.7103211 3.1939304 6.0564583 -2.8656845 1.4859707 -0.61456694 42.340765 15.229562 16.314725
|
||||
4.0619303 6.9788743 3.1868475 6.3335563 -2.7990968 0.75885865 -0.44694743 42.645174 15.308083 15.966746
|
||||
3.966833 5.7341201 3.6149267 6.386717 -2.6076681 0.23182741 -0.55240201 42.803996 15.001363 15.941201
|
||||
3.856119 4.9814639 4.2483123 5.6398778 -2.2386782 -0.13547369 -0.89035526 43.126699 15.153933 15.89549
|
||||
3.7114748 4.0042689 4.3938101 5.3769663 -1.8867009 -0.58098164 -0.73115634 43.078128 15.143311 16.029522
|
||||
3.6867902 4.1618237 4.0102813 5.420317 -1.3839677 -0.94227417 -0.42855978 43.320812 15.246681 15.979576
|
||||
3.8247407 3.7506299 3.8415311 7.0364804 -1.1968819 -1.2946647 0.0095104673 43.246474 15.254632 15.896513
|
||||
3.7969091 3.6706948 3.7264602 7.0193638 -1.410513 -1.6211384 0.065695724 43.437836 15.168521 15.595894
|
||||
3.9389477 3.6358719 4.0877764 7.7916611 -1.3246694 -2.3413686 -0.094860157 43.279214 15.353806 15.465847
|
||||
4.1666861 3.7657753 3.9029422 9.6925552 -1.7091472 -2.6645858 0.34650579 43.360362 15.336299 15.42574
|
||||
4.2623587 4.4445738 3.4732435 10.249884 -1.3299476 -3.19818 0.30614208 43.755796 15.269714 15.56183
|
||||
4.4120457 3.8158033 3.6700357 11.980309 -1.5546486 -2.757901 0.51296075 43.639154 15.641714 15.748073
|
||||
4.4239787 3.2243265 4.0831065 12.264154 -1.5893887 -2.0627321 0.25747441 43.691108 15.342315 15.898168
|
||||
4.3056135 2.6280527 4.4356932 11.474562 -1.2707147 -1.8263383 0.028806485 43.63839 15.318566 15.950982
|
||||
4.349789 2.8919037 4.3719925 11.656769 -1.5097124 -1.9948391 0.06144347 43.634788 15.022389 15.690407
|
||||
4.3584229 2.5260376 4.7064974 11.763315 -1.4326427 -2.1258969 0.58036467 43.669703 15.051132 15.460037
|
||||
4.4931654 3.070312 4.8135505 12.304673 -1.5549189 -2.1245695 -0.56145055 43.885773 14.796557 15.347812
|
||||
4.506235 3.6553777 4.612885 12.037891 -1.7868374 -2.1271702 -0.55704196 44.308855 14.646028 15.434641
|
||||
4.76806 3.5190536 5.3464268 13.868916 -2.4421853 -1.5912198 -0.2360655 44.315508 14.457266 15.563807
|
||||
4.8223857 3.6610784 5.4198637 14.174462 -2.8064522 -1.3051469 -0.42653793 44.222252 14.398241 15.500107
|
||||
4.8602836 3.5383663 6.011611 14.07238 -3.1390617 -1.2231969 -0.33733589 44.041646 13.941675 15.540578
|
||||
4.8402613 3.561673 5.4778139 14.388642 -3.153822 -0.31270493 0.085236932 44.131733 13.924553 15.515988
|
||||
4.8827383 3.6880053 4.8661009 15.287027 -2.9776139 -0.75910995 0.38846204 44.443177 13.900337 15.349413
|
||||
5.0135514 3.6606405 5.7817724 15.693285 -3.0567538 -0.36222976 0.52025814 44.435911 13.698528 15.337839
|
||||
5.0124579 3.6521656 5.7745828 15.697985 -3.0461172 -0.36613542 0.52093553 44.434268 13.698785 15.336717
|
||||
Loop time of 734.556 on 64 procs for 400001 steps with 43149 atoms
|
||||
|
||||
Performance: 2352.449 ns/day, 0.010 hours/ns, 544.548 timesteps/s
|
||||
99.6% CPU use with 64 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.023708 | 0.79185 | 2.8291 | 113.7 | 0.11
|
||||
Bond | 0.022931 | 0.049119 | 0.10765 | 10.6 | 0.01
|
||||
Neigh | 18.159 | 20.016 | 22.121 | 39.2 | 2.72
|
||||
Comm | 0.48376 | 85.357 | 168.32 | 840.8 | 11.62
|
||||
Output | 0.20377 | 0.23043 | 0.2857 | 2.8 | 0.03
|
||||
Modify | 536.61 | 611.99 | 690.61 | 296.2 | 83.31
|
||||
Other | | 16.12 | | | 2.19
|
||||
|
||||
Nlocal: 674.203 ave 2048 max 0 min
|
||||
Histogram: 32 0 1 13 1 1 0 0 0 16
|
||||
Nghost: 2113.72 ave 5607 max 0 min
|
||||
Histogram: 32 0 0 0 2 14 0 0 4 12
|
||||
Neighs: 0.218750 ave 10 max 0 min
|
||||
Histogram: 61 1 0 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 14
|
||||
Ave neighs/atom = 0.00032445711
|
||||
Ave special neighs/atom = 0.0014368815
|
||||
Neighbor list builds = 7140
|
||||
Dangerous builds = 0
|
||||
|
||||
LB equilibriumDist time: 137.365442
|
||||
LB update time: 54.652305
|
||||
LB PCalc time: 105.068066
|
||||
LB fluidForce time: 237.915672
|
||||
LB CorrectU time: 50.912956
|
||||
Total wall time: 0:12:14
|
||||
32841
examples/PACKAGES/latboltz/translocation/translocationdump.lammpstrj
Normal file
32841
examples/PACKAGES/latboltz/translocation/translocationdump.lammpstrj
Normal file
File diff suppressed because it is too large
Load Diff
84318
examples/PACKAGES/latboltz/translocation/walldump.xyz
Normal file
84318
examples/PACKAGES/latboltz/translocation/walldump.xyz
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
This package contains a LAMMPS implementation of a background
|
||||
Lattice-Boltzmann fluid, which can be used to model MD particles
|
||||
influenced by hydrodynamic forces. Details are described in these two
|
||||
papers:
|
||||
influenced by hydrodynamic forces. Details of the original version
|
||||
of this package are described in these two papers:
|
||||
|
||||
Mackay, F. E., Ollila, S.T.T., and Denniston, C., Hydrodynamic Forces
|
||||
Implemented into LAMMPS through a lattice-Boltzmann fluid, Computer
|
||||
@ -21,19 +21,18 @@ examples/PACKAGES/latboltz.
|
||||
IMPORTANT NOTE: This package can only be used if LAMMPS is compiled
|
||||
with MPI (i.e. the serial makefile should not be used to compile the
|
||||
code). Also, several of the test examples provided make use of the
|
||||
rigid fix. Therefore, this should be included in the LAMMPS build by
|
||||
typing "make yes-rigid" prior to the usual compilation (see the
|
||||
"Including/excluding packages" section of the LAMMPS manual).
|
||||
rigid fix and molecule packages. Therefore, these should be included
|
||||
in the LAMMPS build (see the "Including/excluding packages" section of
|
||||
the LAMMPS manual).
|
||||
|
||||
The creators of this package are as follows:
|
||||
|
||||
Frances Mackay
|
||||
Santtu Ollila
|
||||
Tyson Whitehead
|
||||
Colin Denniston, cdennist@uwo.ca
|
||||
University of Western Ontario
|
||||
fmackay@uwo.ca
|
||||
|
||||
Dr. Colin Denniston
|
||||
University of Western Ontario
|
||||
cdennist@uwo.ca
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
@ -45,10 +44,5 @@ fix_lb_fluid.cpp: fix used to create the lattice-Boltzmann fluid on a
|
||||
fix_momentum_lb.cpp: fix used to subtract off the total (atom plus fluid)
|
||||
linear momentum from the system.
|
||||
|
||||
fix_pc.cpp: integration algorithm for individual atoms.
|
||||
|
||||
fix_rigid_pc_sphere.cpp: integration algorithm for rigid spherical
|
||||
collections of atoms.
|
||||
|
||||
fix_viscous_lb.cpp: fix to add the fluid force to the atoms when using a
|
||||
built-in LAMMPS integrator.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -13,7 +13,7 @@
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(lb/fluid,FixLbFluid);
|
||||
FixStyle(lb/fluid,FixLbFluid)
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
@ -28,138 +28,377 @@ FixStyle(lb/fluid,FixLbFluid);
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class FixLbFluid : public Fix {
|
||||
friend class FixLbMomentum;
|
||||
friend class FixLbRigidPCSphere;
|
||||
friend class FixLbPC;
|
||||
friend class FixLbViscous;
|
||||
static const double kappa_lb=0.0;
|
||||
|
||||
public:
|
||||
FixLbFluid(class LAMMPS *, int, char **);
|
||||
~FixLbFluid();
|
||||
int setmask();
|
||||
void init();
|
||||
void initial_integrate(int);
|
||||
void setup(int);
|
||||
void post_force(int);
|
||||
void end_of_step();
|
||||
|
||||
void grow_arrays(int);
|
||||
void copy_arrays(int, int, int);
|
||||
int pack_exchange(int, double *);
|
||||
int unpack_exchange(int, double *);
|
||||
|
||||
private:
|
||||
double viscosity, densityinit_real, a_0_real, T;
|
||||
int setdx, seta0;
|
||||
int numvel;
|
||||
|
||||
double dm_lb, dx_lb, dt_lb; // Lattice units for mass, distance, time.
|
||||
|
||||
int Nbx, Nby, Nbz; // Total # of x,y,z grid points.
|
||||
int subNbx, subNby, subNbz; // # of x,y,z, grid points (including buffer)
|
||||
// on local processor.
|
||||
int me, nprocs; // MPI variables: processor ID, # of processors
|
||||
MPI_Datatype oneslice; // MPI datatypes to pass arrays.
|
||||
MPI_Datatype passxu, passyu, passzu;
|
||||
MPI_Datatype passxf, passyf, passzf;
|
||||
MPI_Datatype passxrho, passyrho, passzrho;
|
||||
MPI_Datatype passxtemp, passytemp, passztemp;
|
||||
|
||||
double kB, densityinit, a_0; // Boltzmann constant, initial density,
|
||||
// and a_0 all in lattice units.
|
||||
double *Gamma;
|
||||
double *NodeArea;
|
||||
int setGamma, setArea;
|
||||
double **hydroF;
|
||||
|
||||
int groupbit_viscouslb, groupbit_pc, groupbit_rigid_pc_sphere;
|
||||
|
||||
double ***density_lb; // fluid density
|
||||
double ****u_lb; // fluid velocity
|
||||
double ****f_lb; // distributions
|
||||
double ****fnew; // used in the calculation of the new
|
||||
// distributions.
|
||||
double ****feq; // equilibrium distributions
|
||||
double ****feqold; // equilibrium distributions from previous
|
||||
// timestep
|
||||
|
||||
double ****feqn; // equilibrium distributions without noise.
|
||||
double ****feqoldn; // equilibrium distributions from previous
|
||||
// timestep without noise.
|
||||
double ****Ff; // Force from the MD particles on the fluid.
|
||||
double ****Fftempx;
|
||||
double ****Fftempy;
|
||||
double ****Fftempz;
|
||||
|
||||
double *Ng_lb; // Lattice Boltzmann variables.
|
||||
double *w_lb;
|
||||
double **mg_lb;
|
||||
int **e;
|
||||
double tau;
|
||||
double expminusdtovertau;
|
||||
double Dcoeff;
|
||||
double K_0;
|
||||
double dtoverdtcollision;
|
||||
|
||||
int step;
|
||||
|
||||
double ****buf; // arrays used to output data.
|
||||
double ****buf2;
|
||||
double ****altogether;
|
||||
double ****altogether2;
|
||||
|
||||
double bodyforcex, bodyforcey, bodyforcez; // Body Forces acting on the fluid (default=0)
|
||||
double vwtp, vwbt; // Velocities of the z walls in the y
|
||||
// direction. (must have fixed boundary
|
||||
// conditions in z)
|
||||
|
||||
int noisestress; // 1 to include noise in the system,
|
||||
// 0 otherwise.
|
||||
double namp, noisefactor;
|
||||
int seed;
|
||||
class RanMars *random;
|
||||
|
||||
int force_diagnostic; // 1 to print out the force action on a group
|
||||
// of particles, 0 otherwise.
|
||||
int igroupforce; // the group for which the force is to be
|
||||
// printed.
|
||||
|
||||
int typeLB;
|
||||
|
||||
int trilinear_stencil; // 1 to use the trilinear stencil, 0 to use the
|
||||
// peskin stencil.
|
||||
|
||||
int readrestart; // 1 to read in data from a restart file.
|
||||
MPI_File pFileRead;
|
||||
|
||||
int printrestart; // 1 to write data to a restart file.
|
||||
MPI_File pFileWrite;
|
||||
|
||||
int printfluid;
|
||||
int fixviscouslb;
|
||||
|
||||
void rescale();
|
||||
void (FixLbFluid::*initializeLB)();
|
||||
void initializeLB15();
|
||||
void initializeLB19();
|
||||
void initialize_feq();
|
||||
void (FixLbFluid::*equilibriumdist)(int, int, int, int, int, int);
|
||||
void equilibriumdist15(int, int, int, int, int, int);
|
||||
void equilibriumdist19(int, int, int, int, int, int);
|
||||
void parametercalc_part(int, int, int, int, int, int);
|
||||
void parametercalc_full();
|
||||
void update_periodic(int, int, int, int, int, int);
|
||||
void (FixLbFluid::*update_full)();
|
||||
void update_full15();
|
||||
void update_full19();
|
||||
void streamout();
|
||||
void read_restartfile();
|
||||
void write_restartfile();
|
||||
void peskin_interpolation(int);
|
||||
void trilinear_interpolation(int);
|
||||
void calc_fluidforce();
|
||||
// 15-velocity lattice propogation vectors
|
||||
static const int e15[15][3] = {
|
||||
{ 0, 0, 0},
|
||||
{ 1, 0, 0},
|
||||
{ 0, 1, 0},
|
||||
{-1, 0, 0},
|
||||
{ 0,-1, 0},
|
||||
{ 0, 0, 1},
|
||||
{ 0, 0,-1},
|
||||
{ 1, 1, 1},
|
||||
{-1, 1, 1},
|
||||
{-1,-1, 1},
|
||||
{ 1,-1, 1},
|
||||
{ 1, 1,-1},
|
||||
{-1, 1,-1},
|
||||
{-1,-1,-1},
|
||||
{ 1,-1,-1}
|
||||
};
|
||||
|
||||
// 15-velocity weights
|
||||
static const double w_lb15[15] =
|
||||
{ 2./9., 1./9., 1./9., 1./9., 1./9., 1./9., 1./9., 1./72., 1./72., 1./72., 1./72., 1./72., 1./72., 1./72., 1./72.};
|
||||
|
||||
// 15-velocity normalizations
|
||||
static const double Ng_lb15[15] =
|
||||
{ 1., 3., 3., 3., 9./2., 9./2., 9./2., 9., 9., 9., 27./2., 27./2., 27./2., 9., 1.};
|
||||
|
||||
// 15-velcity transformation matrix for f_i to moments
|
||||
static const double mg_lb15[15][15] = {
|
||||
{ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.},
|
||||
{ 0., 1., 0., -1., 0., 0., 0., 1., -1., -1., 1., 1., -1., -1., 1.},
|
||||
{ 0., 0., 1., 0., -1., 0., 0., 1., 1., -1., -1., 1., 1., -1., -1.},
|
||||
{ 0., 0., 0., 0., 0., 1., -1., 1., 1., 1., 1., -1., -1., -1., -1.},
|
||||
{ -1./3., 2./3., -1./3., 2./3., -1./3., -1./3., -1./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3.},
|
||||
{ -1./3., -1./3., 2./3., -1./3., 2./3., -1./3., -1./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3.},
|
||||
{ -1./3., -1./3., -1./3., -1./3., -1./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 1., -1., 1., -1., 1., -1., 1., -1.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 1., 1., -1., -1., -1., -1., 1., 1.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 1., -1., -1., 1., -1., 1., 1., -1.},
|
||||
{ 0., 0., -1./3., 0., 1./3., 0., 0., 2./3., 2./3., -2./3., -2./3., 2./3., 2./3., -2./3., -2./3.},
|
||||
{ 0., 0., 0., 0., 0., -1./3., 1./3., 2./3., 2./3., 2./3., 2./3., -2./3., -2./3., -2./3., -2./3.},
|
||||
{ 0., -1./3., 0., 1./3., 0., 0., 0., 2./3., -2./3., -2./3., 2./3., 2./3., -2./3., -2./3., 2./3.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 1., -1., 1., -1., -1., 1., -1., 1.},
|
||||
{M_SQRT2,-M_SQRT1_2,-M_SQRT1_2,-M_SQRT1_2,-M_SQRT1_2,-M_SQRT1_2,-M_SQRT1_2,M_SQRT2,M_SQRT2,M_SQRT2,M_SQRT2,M_SQRT2,M_SQRT2,M_SQRT2,M_SQRT2}
|
||||
};
|
||||
|
||||
// 15-velocity opposite lattice directions for bounce-back, i.e. od[i] = j such that e15[j]=-e15[i]
|
||||
static const int od[15] =
|
||||
{ 0, 3, 4, 1, 2, 6, 5, 13, 14, 11, 12, 9, 10, 7, 8};
|
||||
|
||||
// 15-velocity bounce-back list
|
||||
// bbl[i][0] = number of bounce-back directions for orientation i
|
||||
// bbl[i][j]...bbl[i][bbl[i][0]] directions that would be coming from inside the wall so need to come from bounce-back
|
||||
// bbl[i][[bbl[i][0]+1]...bbl[i][16] directions where standard propogation can proceed (pointing into or along wall)
|
||||
// inside edge has 1/4 inside domain, 3/4 outside domain
|
||||
// outside edge has 3/4 outside domain, 1/4 inside domain
|
||||
// Note: 1. This list is not exhaustive (eg. there should be 12 inside and 12 outside edges possible, it just covers cases
|
||||
// accessible in the pit routines. Could be generalized to include other geometries
|
||||
// 2. Need better labelling for corners (particularly in-out) that distinguishes different cases (e.g. 10 and 29 are NOT same, also 11,31)
|
||||
// ori wall normals (point into domain)
|
||||
// 0 not relevent, ori==0 only for lattice type 0 (standard bulk fluid) and 2 (outside domain)
|
||||
// 1 wall +x
|
||||
// 2 wall +y
|
||||
// 3 wall +z
|
||||
// 4 outside edge +x,+z
|
||||
// 5 inside edge +x,+z
|
||||
// 6 inside edge +y,+z
|
||||
// 7 outside edge +y,+z
|
||||
// 8 inside edge -x,-y
|
||||
// 9 inside edge -x,+y
|
||||
// 10 in-out corner +x,+y,+z
|
||||
// 11 in-out corner +x,-y,+z
|
||||
// 12 inside corner -x,+y,+z
|
||||
// 13 inside corner -x,-y,+z
|
||||
// 14 wall -x
|
||||
// 15 wall -y
|
||||
// 16 wall -z
|
||||
// 17 outside edge -x,+z
|
||||
// 18 inside edge -x,+z
|
||||
// 19 inside edge -y,+z
|
||||
// 20 outside edge -y,+z
|
||||
// 21 inside edge +x,-y
|
||||
// 22 inside edge +x,+y
|
||||
// 23 in-out corner -x,+y,+z
|
||||
// 24 in-out corner -x,-y,+z
|
||||
// 25 inside corner +x,+y,+z
|
||||
// 26 inside corner +x,-y,+z
|
||||
// 27 inside edge +y,-z
|
||||
// 28 inside edge -y,-z
|
||||
// 29 in-out corner +x,+y,+z
|
||||
// 30 in-out corner +x,-y,+z
|
||||
// 31 in-out corner -x,+y,+z
|
||||
// 32 in-out corner -x,-y,+z
|
||||
static const int bbl[33][16] = {
|
||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
|
||||
{ 5, 1, 7, 10, 11, 14, 0, 2, 3, 4, 5, 6, 8, 9, 12, 13},
|
||||
{ 5, 2, 7, 8, 11, 12, 0, 1, 3, 4, 5, 6, 9, 10, 13, 14},
|
||||
{ 5, 5, 7, 8, 9, 10, 0, 1, 2, 3, 4, 6, 11, 12, 13, 14},
|
||||
{ 4, 7, 10, 1, 5, 0, 2, 3, 4, 6, 8, 9, 11, 12, 13, 14},
|
||||
{ 8, 1, 5, 7, 10, 8, 9, 11, 14, 0, 2, 3, 4, 6, 12, 13},
|
||||
{ 8, 2, 5, 7, 8, 9, 10, 11, 12, 0, 1, 3, 4, 6, 13, 14},
|
||||
{ 4, 2, 5, 7, 8, 0, 1, 3, 4, 6, 9, 10, 11, 12, 13, 14},
|
||||
{ 8, 3, 4, 9, 13, 8, 10, 12, 14, 0, 1, 2, 5, 6, 7, 11},
|
||||
{ 8, 2, 3, 8, 12, 7, 9, 11, 13, 0, 1, 4, 5, 6, 10, 14},
|
||||
{ 3, 7, 8, 10, 0, 1, 2, 3, 4, 5, 6, 9, 11, 12, 13, 14},
|
||||
{ 3, 7, 9, 10, 0, 1, 2, 3, 4, 5, 6, 8, 11, 12, 13, 14},
|
||||
{10, 2, 3, 5, 8, 7, 9, 10, 11, 12, 13, 0, 1, 4, 6, 14},
|
||||
{10, 3, 4, 5, 9, 7, 8, 10, 12, 13, 14, 0, 1, 2, 6, 11},
|
||||
{ 5, 3, 8, 9, 12, 13, 0, 1, 2, 4, 5, 6, 7, 10, 11, 14},
|
||||
{ 5, 4, 9, 10, 13, 14, 0, 1, 2, 3, 5, 6, 7, 8, 11, 12},
|
||||
{ 5, 6, 11, 12, 13, 14, 0, 1, 2, 3, 4, 5, 7, 8, 9, 10},
|
||||
{ 4, 8, 9, 3, 5, 0, 1, 2, 4, 6, 7, 10, 11, 12, 13, 14},
|
||||
{ 8, 3, 5, 8, 9, 7, 10, 12, 13, 0, 1, 2, 4, 6, 11, 14},
|
||||
{ 8, 4, 5, 9, 10, 7, 8, 13, 14, 0, 1, 2, 3, 6, 11, 12},
|
||||
{ 4, 4, 5, 9, 10, 0, 1, 2, 3, 6, 7, 8, 11, 12, 13, 14},
|
||||
{ 8, 1, 4, 10, 14, 7, 9, 11, 13, 0, 2, 3, 5, 6, 8, 12},
|
||||
{ 8, 1, 2, 7, 11, 8, 10, 12, 14, 0, 3, 4, 5, 6, 9, 13},
|
||||
{ 3, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 10, 11, 12, 13, 14},
|
||||
{ 3, 8, 9, 10, 0, 1, 2, 3, 4, 5, 6, 7, 11, 12, 13, 14},
|
||||
{10, 1, 2, 5, 7, 8, 9, 10, 11, 12, 14, 0, 3, 4, 6, 13},
|
||||
{10, 1, 4, 5, 10, 7, 8, 9, 11, 13, 14, 0, 2, 3, 6, 12},
|
||||
{ 8, 2, 6, 11, 12, 7, 8, 13, 14, 0, 1, 3, 4, 5, 9, 10},
|
||||
{ 8, 4, 6, 13, 14, 9, 10, 11, 12, 0, 1, 2, 3, 5, 7, 8},
|
||||
{ 6, 2, 7, 8, 11, 10, 12, 0, 1, 3, 4, 5, 6, 9, 13, 14},
|
||||
{ 6, 4, 9, 10, 14, 7, 13, 0, 1, 2, 3, 5, 6, 8, 11, 12},
|
||||
{ 6, 2, 7, 8, 12, 9, 11, 0, 1, 3, 4, 5, 6, 10, 13, 14},
|
||||
{ 6, 4, 9, 10, 13, 8, 14, 0, 1, 2, 3, 5, 6, 7, 11, 12}
|
||||
};
|
||||
|
||||
|
||||
// 19-velocity lattice propogation vectors
|
||||
static const int e19[19][3] = {
|
||||
{ 0, 0, 0},
|
||||
{ 1, 0, 0},
|
||||
{ 0, 1, 0},
|
||||
{-1, 0, 0},
|
||||
{ 0,-1, 0},
|
||||
{ 0, 0, 1},
|
||||
{ 0, 0,-1},
|
||||
{ 1, 1, 0},
|
||||
{1, -1, 0},
|
||||
{-1, 1, 0},
|
||||
{-1,-1, 0},
|
||||
{ 1, 0, 1},
|
||||
{ 1, 0,-1},
|
||||
{-1, 0, 1},
|
||||
{-1, 0,-1},
|
||||
{ 0, 1, 1},
|
||||
{ 0, 1,-1},
|
||||
{ 0,-1, 1},
|
||||
{ 0,-1,-1}
|
||||
};
|
||||
|
||||
|
||||
static const double w_lb19[19] =
|
||||
{1./3.,1./18.,1./18.,1./18.,1./18.,1./18.,1./18.,1./36.,1./36.,1./36.,1./36.,1./36.,1./36.,1./36.,1./36.,1./36., 1./36., 1./36.,1./36.};
|
||||
|
||||
static const double Ng_lb19[19] =
|
||||
{ 1., 3., 3., 3., 9./2., 9./2., 9./2., 9., 9., 9.,27./2.,27./2.,27./2., 18., 18., 18.,162./7.,126./5., 30.};
|
||||
|
||||
static const double mg_lb19[19][19] = {
|
||||
{ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.},
|
||||
{ 0., 1., 0., -1., 0., 0., 0., 1., 1., -1., -1., 1., 1., -1., -1., 0., 0., 0., 0.},
|
||||
{ 0., 0., 1., 0., -1., 0., 0., 1., -1., 1., -1., 0., 0., 0., 0., 1., 1., -1., -1.},
|
||||
{ 0., 0., 0., 0., 0., 1., -1., 0., 0., 0., 0., 1., -1., 1., -1., 1., -1., 1., -1.},
|
||||
{-1./3., 2./3., -1./3., 2./3., -1./3., -1./3., -1./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3.,-1./3.,-1./3.,-1./3.,-1./3.},
|
||||
{-1./3., -1./3., 2./3., -1./3., 2./3., -1./3., -1./3., 2./3., 2./3., 2./3., 2./3.,-1./3.,-1./3.,-1./3.,-1./3., 2./3., 2./3., 2./3., 2./3.},
|
||||
{-1./3., -1./3., -1./3., -1./3., -1./3., 2./3., 2./3.,-1./3.,-1./3.,-1./3.,-1./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3., 2./3.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 1., -1., -1., 1., 0., 0., 0., 0., 0., 0., 0., 0.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 1., -1., -1., 1., 0., 0., 0., 0.},
|
||||
{ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 1., -1., -1., 1.},
|
||||
{ 0., -1./3., 0., 1./3., 0., 0., 0., 2./3., 2./3.,-2./3.,-2./3.,-1./3.,-1./3., 1./3., 1./3., 0., 0., 0., 0.},
|
||||
{ 0., 0., -1./3., 0., 1./3., 0., 0., 2./3.,-2./3., 2./3.,-2./3., 0., 0., 0., 0.,-1./3.,-1./3., 1./3., 1./3.},
|
||||
{ 0., 0., 0., 0., 0., -1./3., 1./3., 0., 0., 0., 0., 2./3.,-2./3., 2./3.,-2./3.,-1./3., 1./3.,-1./3., 1./3.},
|
||||
{ 0., -0.5, 0., 0.5, 0., 0., 0., 0., 0., 0., 0., 0.5, 0.5, -0.5, -0.5, 0., 0., 0., 0.},
|
||||
{ 0., 0., 0., 0., 0., -0.5, 0.5, 0., 0., 0., 0., 0., 0., 0., 0., 0.5, -0.5, 0.5, -0.5},
|
||||
{ 0., 0., -0.5, 0., 0.5, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.5, 0.5, -0.5, -0.5},
|
||||
{1./18.,-5./18.,-5./18.,-5./18.,-5./18., 2./9., 2./9.,7./18.,7./18.,7./18.,7./18.,-1./9.,-1./9.,-1./9.,-1./9.,-1./9.,-1./9.,-1./9.,-1./9.},
|
||||
{1./14.,-5./14., 1./7.,-5./14., 1./7.,-3./14.,-3./14., 0., 0., 0., 0.,5./14.,5./14.,5./14.,5./14.,-1./7.,-1./7.,-1./7.,-1./7.},
|
||||
{1./10., 0.,-3./10., 0.,-3./10.,-3./10.,-3./10., 0., 0., 0., 0., 0., 0., 0., 0.,3./10.,3./10.,3./10.,3./10.}
|
||||
};
|
||||
|
||||
|
||||
class Site {
|
||||
public:
|
||||
int type;
|
||||
int orientation;
|
||||
};
|
||||
|
||||
|
||||
class FixLbFluid : public Fix {
|
||||
friend class FixLbMomentum;
|
||||
friend class FixLbViscous;
|
||||
|
||||
public:
|
||||
FixLbFluid(class LAMMPS *, int, char **);
|
||||
~FixLbFluid();
|
||||
int setmask();
|
||||
void init();
|
||||
void initial_integrate(int);
|
||||
void setup(int);
|
||||
void pre_force(int);
|
||||
void post_force(int);
|
||||
void final_integrate();
|
||||
void end_of_step();
|
||||
|
||||
void grow_arrays(int);
|
||||
void copy_arrays(int, int, int);
|
||||
int pack_exchange(int, double *);
|
||||
int unpack_exchange(int, double *);
|
||||
|
||||
double compute_scalar();
|
||||
double compute_vector(int);
|
||||
|
||||
void dump(int);
|
||||
|
||||
private:
|
||||
double viscosity,densityinit_real,a_0_real,T;
|
||||
int setdx,seta0,setdof;
|
||||
int numvel;
|
||||
|
||||
double dm_lb,dx_lb,dt_lb; // Lattice units for mass, distance, time.
|
||||
|
||||
int Nbx,Nby,Nbz; // Total # of x,y,z grid points.
|
||||
int subNbx,subNby,subNbz; // # of x,y,z, grid points (including buffer)
|
||||
// on local processor.
|
||||
int fluid_local_n0[3]; // Size of local including both lower and upper end points
|
||||
int fluid_global_o0[3]; // Offset of local in global from lower end point
|
||||
int fluid_global_n0[3]; // Size of global including both lower and upper end points
|
||||
|
||||
int me, nprocs; // MPI variables: processor ID, # of processors
|
||||
MPI_Datatype oneslice; // MPI datatypes to pass arrays.
|
||||
MPI_Datatype passxu,passyu,passzu;
|
||||
MPI_Datatype passxf,passyf,passzf;
|
||||
MPI_Datatype passxrho,passyrho,passzrho;
|
||||
MPI_Datatype passxtemp,passytemp,passztemp;
|
||||
MPI_Datatype passxWtemp,passyWtemp,passzWtemp;
|
||||
MPI_Datatype fluid_density_2_mpitype;
|
||||
MPI_Datatype fluid_velocity_2_mpitype;
|
||||
|
||||
MPI_Datatype realType3_mpitype; // MPI type for a 3-vector
|
||||
|
||||
double kB,densityinit,a_0; // Boltzmann constant, initial density,
|
||||
// and a_0 all in lattice units.
|
||||
double *Gamma;
|
||||
double **hydroF;
|
||||
double *massp;
|
||||
|
||||
int dump_interval, dump_time_index;
|
||||
std::string dump_file_name_xdmf;
|
||||
std::string dump_file_name_raw;
|
||||
FILE* dump_file_handle_xdmf;
|
||||
MPI_File dump_file_handle_raw;
|
||||
MPI_Datatype dump_file_mpitype;
|
||||
|
||||
int groupbit_viscouslb;
|
||||
|
||||
double ***density_lb; // fluid density
|
||||
double ****u_lb; // fluid velocity
|
||||
double ****f_lb; // distributions
|
||||
double ****fnew; // used in the calculation of the new
|
||||
// distributions.
|
||||
double ****feq; // equilibrium distributions
|
||||
|
||||
double ****Ff,***Wf; // Force, total weight, from the MD particles on the fluid.
|
||||
double ****Fftempx,***Wftempx;
|
||||
double ****Fftempy,***Wftempy;
|
||||
double ****Fftempz,***Wftempz;
|
||||
|
||||
double tau; // Lattice Boltzmann variables.
|
||||
double K_0;
|
||||
|
||||
int step;
|
||||
|
||||
int n_stencil=2; // Number of points for spread/interpolate stencil
|
||||
|
||||
double bodyforcex,bodyforcey,bodyforcez; // Body Forces acting on the fluid (default=0)
|
||||
double vwtp,vwbt; // Velocities of the z walls in the y
|
||||
// direction. (must have fixed boundary
|
||||
// conditions in z)
|
||||
|
||||
int pressure; // pressure boundary conditions on/off
|
||||
double rhofactor; // factor for density/pressure jump at boundary
|
||||
double rhoH,rhoL; // density target for high/low side of jump
|
||||
double meanrho1,meanrhoLx; // current densities at boundary on high/low side of jump
|
||||
|
||||
int noisestress; // 1 to include noise in the system,
|
||||
// 0 otherwise.
|
||||
int lin_init; // 1 to initialize with linear interpolation
|
||||
// between boundaries.
|
||||
// 0 initialize to uniform density, 0.0 velocities.
|
||||
|
||||
double namp,noisefactor;
|
||||
int seed;
|
||||
class RanMars *random;
|
||||
|
||||
int readrestart; // 1 to read in data from a restart file.
|
||||
MPI_File pFileRead;
|
||||
|
||||
int printrestart; // 1 to write data to a restart file.
|
||||
MPI_File pFileWrite;
|
||||
|
||||
double timeEqb,timeUpdate,timePCalc,timefluidForce,timeCorrectU;
|
||||
|
||||
double dof_lb=0;
|
||||
|
||||
int fixviscouslb;
|
||||
|
||||
void rescale(void);
|
||||
void SetupBuffers(void);
|
||||
void InitializeFirstRun(void);
|
||||
void initializeLB(void);
|
||||
void initialize_feq(void);
|
||||
void (FixLbFluid::*equilibriumdist)(int,int,int,int,int,int);
|
||||
void equilibriumdist15(int,int,int,int,int,int);
|
||||
void equilibriumdist19(int,int,int,int,int,int);
|
||||
void parametercalc_part(int,int,int,int,int,int);
|
||||
void correctu_part(int,int,int,int,int,int);
|
||||
void parametercalc_full(void);
|
||||
void update_periodic(int,int,int,int,int,int);
|
||||
void correctu_full(void);
|
||||
|
||||
void calc_mass_momentum(double& totalmass, double totalmomentum[3]);
|
||||
void calc_MPT(double& totalmass, double totalmomentum[3], double& Tave);
|
||||
|
||||
void (FixLbFluid::*update_full)(void);
|
||||
void update_full15(void);
|
||||
void update_full19(void);
|
||||
|
||||
void read_restartfile(void);
|
||||
void write_restartfile(void);
|
||||
|
||||
void (FixLbFluid::*interpolate)(int, int);
|
||||
void (FixLbFluid::*interpolationweight)(int);
|
||||
void keys_interpolation(int, int);
|
||||
void keys_interpolationweight(int);
|
||||
void trilinear_interpolation(int, int);
|
||||
void trilinear_interpolationweight(int);
|
||||
void IBM3_interpolation(int, int);
|
||||
void IBM3_interpolationweight(int);
|
||||
|
||||
void calc_fluidforceI(void);
|
||||
void calc_fluidforceII(void);
|
||||
void calc_fluidforceweight(void);
|
||||
|
||||
int adjust_dof_fix();
|
||||
double dof_compute();
|
||||
|
||||
/* nanopit parameters */
|
||||
int npits; // number of nanopits
|
||||
int h_s; // slit height
|
||||
int h_p; // pit height
|
||||
int w_p; // pit width
|
||||
int l_p; // pit length
|
||||
int l_pp; // distance between consecutive pits
|
||||
int l_e; // length of end segments
|
||||
int sw; // side walls on/off
|
||||
int openingsites; // Number of active fluid sites at x=0
|
||||
|
||||
Site ***sublattice, ***wholelattice; // lattice geometry
|
||||
|
||||
/* nanopit routines */
|
||||
void addslit(int &,int,int,int,int);
|
||||
void addpit(int &,int,int,int,int,int);
|
||||
void initializeGeometry(void);
|
||||
void initializeGlobalGeometry(void);
|
||||
|
||||
};
|
||||
} // namespace LAMMPS_NS
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
@ -20,14 +20,13 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_lb_momentum.h"
|
||||
|
||||
|
||||
#include <cstring>
|
||||
#include "atom.h"
|
||||
#include "domain.h"
|
||||
#include "group.h"
|
||||
#include "error.h"
|
||||
#include "fix_lb_fluid.h"
|
||||
#include "modify.h"
|
||||
#include "comm.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
@ -39,7 +38,7 @@ FixLbMomentum::FixLbMomentum(LAMMPS *lmp, int narg, char **arg) :
|
||||
Fix(lmp, narg, arg)
|
||||
{
|
||||
if (narg < 4) error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
nevery = atoi(arg[3]);
|
||||
nevery = utils::inumeric(FLERR,arg[3],false,lmp);;
|
||||
if (nevery <= 0) error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
|
||||
linear = 1;
|
||||
@ -52,9 +51,9 @@ FixLbMomentum::FixLbMomentum(LAMMPS *lmp, int narg, char **arg) :
|
||||
if (strcmp(arg[iarg],"linear") == 0) {
|
||||
if (iarg+4 > narg) error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
linear = 1;
|
||||
xflag = atoi(arg[iarg+1]);
|
||||
yflag = atoi(arg[iarg+2]);
|
||||
zflag = atoi(arg[iarg+3]);
|
||||
xflag = utils::inumeric(FLERR,arg[iarg+1],false,lmp);
|
||||
yflag = utils::inumeric(FLERR,arg[iarg+2],false,lmp);
|
||||
zflag = utils::inumeric(FLERR,arg[iarg+3],false,lmp);
|
||||
iarg += 4;
|
||||
} else error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
}
|
||||
@ -64,19 +63,8 @@ FixLbMomentum::FixLbMomentum(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
if (linear)
|
||||
if (xflag < 0 || xflag > 1 || yflag < 0 || yflag > 1 ||
|
||||
zflag < 0 || zflag > 1) error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
|
||||
// cannot have 0 atoms in group
|
||||
|
||||
if (group->count(igroup) == 0.0)
|
||||
error->all(FLERR,"Fix lb/momentum group has no atoms");
|
||||
|
||||
for (int ifix=0; ifix<modify->nfix; ifix++)
|
||||
if (strcmp(modify->fix[ifix]->style,"lb/fluid")==0)
|
||||
fix_lb_fluid = (FixLbFluid *)modify->fix[ifix];
|
||||
|
||||
|
||||
|
||||
zflag < 0 || zflag > 1)
|
||||
error->all(FLERR,"Illegal fix lb/momentum command");
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -92,208 +80,111 @@ int FixLbMomentum::setmask()
|
||||
|
||||
void FixLbMomentum::init()
|
||||
{
|
||||
masstotal = group->mass(igroup);
|
||||
// warn if 0 atoms in group
|
||||
if ((count = group->count(igroup)) == 0)
|
||||
error->warning(FLERR,"Fix lb/momentum group has no atoms: Only fluid momentum affected");
|
||||
|
||||
for(int ifix=0; ifix<modify->nfix; ifix++)
|
||||
if(strcmp(modify->fix[ifix]->style,"lb/fluid")==0)
|
||||
fix_lb_fluid = (FixLbFluid *)modify->fix[ifix];
|
||||
|
||||
count ? masstotal = group->mass(igroup) : 0;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void FixLbMomentum::end_of_step()
|
||||
{
|
||||
double masslb,masslbloc;
|
||||
double momentumlbloc[3],momentumlb[3];
|
||||
double vcmtotal[3];
|
||||
const int numvel = fix_lb_fluid->numvel;
|
||||
double etacov[19]; // = double etacov[numvel]; i.e. 15 or 19
|
||||
double rho;
|
||||
// particle com velcity
|
||||
double vcmp[3] = {0, 0, 0};
|
||||
if (count) group->vcm(igroup,masstotal,vcmp);
|
||||
|
||||
if (linear) {
|
||||
double vcm[3];
|
||||
group->vcm(igroup,masstotal,vcm);
|
||||
// total fluid mass and momentum.
|
||||
double masslb,momentumlb[3];
|
||||
fix_lb_fluid->calc_mass_momentum(masslb, momentumlb);
|
||||
|
||||
//Calculate the center of mass velocity of the particles + fluid.
|
||||
double vcmall[3];
|
||||
vcmall[0] = (masstotal*vcmp[0] + momentumlb[0])/(masslb + masstotal);
|
||||
vcmall[1] = (masstotal*vcmp[1] + momentumlb[1])/(masslb + masstotal);
|
||||
vcmall[2] = (masstotal*vcmp[2] + momentumlb[2])/(masslb + masstotal);
|
||||
|
||||
// adjust velocities by vcm to zero linear momentum
|
||||
// only adjust a component if flag is set
|
||||
// adjust velocities to zero net linear momentum
|
||||
// only adjust a component if flag is set
|
||||
|
||||
//Subtract vcmall from the particles.
|
||||
if (count) {
|
||||
double **v = atom->v;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
int typeLB = fix_lb_fluid->typeLB;
|
||||
int subNbx = fix_lb_fluid->subNbx;
|
||||
int subNby = fix_lb_fluid->subNby;
|
||||
int subNbz = fix_lb_fluid->subNbz;
|
||||
double ***density_lb = fix_lb_fluid->density_lb;
|
||||
double ****f_lb = fix_lb_fluid->f_lb;
|
||||
double ****u_lb = fix_lb_fluid->u_lb;
|
||||
double dm_lb = fix_lb_fluid->dm_lb;
|
||||
double dx_lb = fix_lb_fluid->dx_lb;
|
||||
double dt_lb = fix_lb_fluid->dt_lb;
|
||||
double *Ng_lb = fix_lb_fluid->Ng_lb;
|
||||
double *w_lb = fix_lb_fluid->w_lb;
|
||||
double **mg_lb = fix_lb_fluid->mg_lb;
|
||||
double ucmx,ucmy,ucmz;
|
||||
|
||||
//Calculate the total fluid mass and momentum.
|
||||
masslbloc = 0.0;
|
||||
momentumlbloc[0] = momentumlbloc[1] = momentumlbloc[2] = 0.0;
|
||||
|
||||
for (int i = 1; i<subNbx-1; i++)
|
||||
for (int j = 1; j<subNby-1; j++)
|
||||
for (int k = 1; k<subNbz-1; k++) {
|
||||
masslbloc += density_lb[i][j][k];
|
||||
momentumlbloc[0] += density_lb[i][j][k]*u_lb[i][j][k][0];
|
||||
momentumlbloc[1] += density_lb[i][j][k]*u_lb[i][j][k][1];
|
||||
momentumlbloc[2] += density_lb[i][j][k]*u_lb[i][j][k][2];
|
||||
}
|
||||
MPI_Allreduce(&masslbloc,&masslb,1,MPI_DOUBLE,MPI_SUM,world);
|
||||
MPI_Allreduce(&momentumlbloc[0],&momentumlb[0],3,MPI_DOUBLE,MPI_SUM,world);
|
||||
|
||||
momentumlb[0] *= dm_lb*dx_lb/dt_lb;
|
||||
momentumlb[1] *= dm_lb*dx_lb/dt_lb;
|
||||
momentumlb[2] *= dm_lb*dx_lb/dt_lb;
|
||||
masslb *= dm_lb;
|
||||
|
||||
//Calculate the center of mass velocity of the entire system.
|
||||
vcmtotal[0] = (masstotal*vcm[0] + momentumlb[0])/(masslb + masstotal);
|
||||
vcmtotal[1] = (masstotal*vcm[1] + momentumlb[1])/(masslb + masstotal);
|
||||
vcmtotal[2] = (masstotal*vcm[2] + momentumlb[2])/(masslb + masstotal);
|
||||
|
||||
//Subtract vcm from the particles.
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
if (xflag) v[i][0] -= vcmtotal[0];
|
||||
if (yflag) v[i][1] -= vcmtotal[1];
|
||||
if (zflag) v[i][2] -= vcmtotal[2];
|
||||
if (xflag) v[i][0] -= vcmall[0];
|
||||
if (yflag) v[i][1] -= vcmall[1];
|
||||
if (zflag) v[i][2] -= vcmall[2];
|
||||
}
|
||||
|
||||
vcmtotal[0] *= dt_lb/dx_lb;
|
||||
vcmtotal[1] *= dt_lb/dx_lb;
|
||||
vcmtotal[2] *= dt_lb/dx_lb;
|
||||
|
||||
ucmx = ucmy = ucmz = 0.0;
|
||||
double density_old;
|
||||
double u_old[3];
|
||||
int **e = fix_lb_fluid->e;
|
||||
|
||||
//Subtract vcm from the fluid.
|
||||
for (int i=0; i<subNbx; i++)
|
||||
for (int j=0; j<subNby; j++)
|
||||
for (int k=0; k<subNbz; k++) {
|
||||
rho = density_lb[i][j][k];
|
||||
if (xflag) ucmx = vcmtotal[0];
|
||||
if (yflag) ucmy = vcmtotal[1];
|
||||
if (zflag) ucmz = vcmtotal[2];
|
||||
if (numvel==15) {
|
||||
etacov[0]=0.0;
|
||||
etacov[1]=rho*ucmx;
|
||||
etacov[2]=rho*ucmy;
|
||||
etacov[3]=rho*ucmz;
|
||||
etacov[4]=rho*(2.*u_lb[i][j][k][0]*ucmx-ucmx*ucmx);
|
||||
etacov[5]=rho*(2.*u_lb[i][j][k][1]*ucmy-ucmy*ucmy);
|
||||
etacov[6]=rho*(2.*u_lb[i][j][k][2]*ucmz-ucmz*ucmz);
|
||||
etacov[7]=rho*(u_lb[i][j][k][0]*ucmy+u_lb[i][j][k][1]*ucmx-ucmx*ucmy);
|
||||
etacov[8]=rho*(u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][2]*ucmy-ucmy*ucmz);
|
||||
etacov[9]=rho*(u_lb[i][j][k][0]*ucmz+u_lb[i][j][k][2]*ucmx-ucmx*ucmz);
|
||||
etacov[10]=0.0;
|
||||
etacov[11]=0.0;
|
||||
etacov[12]=0.0;
|
||||
etacov[13]=rho*(u_lb[i][j][k][0]*u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][0]*ucmy*u_lb[i][j][k][2]-
|
||||
u_lb[i][j][k][0]*ucmy*ucmz+ucmx*u_lb[i][j][k][1]*u_lb[i][j][k][2]-
|
||||
ucmx*u_lb[i][j][k][1]*ucmz-ucmx*ucmy*u_lb[i][j][k][2]+
|
||||
ucmx*ucmy*ucmz);
|
||||
etacov[14]=0.0;
|
||||
} else {
|
||||
etacov[0] = 0.0;
|
||||
etacov[1] = rho*ucmx;
|
||||
etacov[2] = rho*ucmy;
|
||||
etacov[3] = rho*ucmz;
|
||||
etacov[4]=rho*(2.*u_lb[i][j][k][0]*ucmx-ucmx*ucmx);
|
||||
etacov[5]=rho*(2.*u_lb[i][j][k][1]*ucmy-ucmy*ucmy);
|
||||
etacov[6]=rho*(2.*u_lb[i][j][k][2]*ucmz-ucmz*ucmz);
|
||||
etacov[7]=rho*(u_lb[i][j][k][0]*ucmy+u_lb[i][j][k][1]*ucmx-ucmx*ucmy);
|
||||
etacov[8]=rho*(u_lb[i][j][k][0]*ucmz+u_lb[i][j][k][2]*ucmx-ucmx*ucmz);
|
||||
etacov[9]=rho*(u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][2]*ucmy-ucmy*ucmz);
|
||||
etacov[10] = 0.0;
|
||||
etacov[11] = 0.0;
|
||||
etacov[12] = 0.0;
|
||||
etacov[13] = 0.0;
|
||||
etacov[14] = 0.0;
|
||||
etacov[15] = 0.0;
|
||||
etacov[16] = 0.0;
|
||||
etacov[17] = 0.0;
|
||||
etacov[18] = 0.0;
|
||||
}
|
||||
|
||||
for (int l=0; l<numvel; l++)
|
||||
for (int ii=0; ii<numvel; ii++) {
|
||||
f_lb[i][j][k][l] -= w_lb[l]*mg_lb[ii][l]*etacov[ii]*Ng_lb[ii];
|
||||
}
|
||||
|
||||
|
||||
if (typeLB == 2) {
|
||||
double ****feqold = fix_lb_fluid->feqold;
|
||||
double ****feqoldn = fix_lb_fluid->feqoldn;
|
||||
density_old = 0.0;
|
||||
u_old[0] = u_old[1] = u_old[2] = 0.0;
|
||||
for (int l=0; l<numvel; l++) {
|
||||
density_old += feqold[i][j][k][l];
|
||||
u_old[0] += feqold[i][j][k][l]*e[l][0];
|
||||
u_old[1] += feqold[i][j][k][l]*e[l][1];
|
||||
u_old[2] += feqold[i][j][k][l]*e[l][2];
|
||||
}
|
||||
u_old[0] = u_old[0]/density_old;
|
||||
u_old[1] = u_old[1]/density_old;
|
||||
u_old[2] = u_old[2]/density_old;
|
||||
|
||||
if (numvel==15) {
|
||||
etacov[0]=0.0;
|
||||
etacov[1]=density_old*ucmx;
|
||||
etacov[2]=density_old*ucmy;
|
||||
etacov[3]=density_old*ucmz;
|
||||
etacov[4]=density_old*(2.*u_old[0]*ucmx-ucmx*ucmx);
|
||||
etacov[5]=density_old*(2.*u_old[1]*ucmy-ucmy*ucmy);
|
||||
etacov[6]=density_old*(2.*u_old[2]*ucmz-ucmz*ucmz);
|
||||
etacov[7]=density_old*(u_old[0]*ucmy+u_old[1]*ucmx-ucmx*ucmy);
|
||||
etacov[8]=density_old*(u_old[1]*ucmz+u_old[2]*ucmy-ucmy*ucmz);
|
||||
etacov[9]=density_old*(u_old[0]*ucmz+u_old[2]*ucmx-ucmx*ucmz);
|
||||
etacov[10]=0.0;
|
||||
etacov[11]=0.0;
|
||||
etacov[12]=0.0;
|
||||
etacov[13]=density_old*(u_old[0]*u_old[1]*ucmz+u_old[0]*ucmy*u_old[2]-
|
||||
u_old[0]*ucmy*ucmz+ucmx*u_old[1]*u_old[2]-
|
||||
ucmx*u_old[1]*ucmz-ucmx*ucmy*u_old[2]+
|
||||
ucmx*ucmy*ucmz);
|
||||
etacov[14]=0.0;
|
||||
} else {
|
||||
etacov[0] = 0.0;
|
||||
etacov[1] = density_old*ucmx;
|
||||
etacov[2] = density_old*ucmy;
|
||||
etacov[3] = density_old*ucmz;
|
||||
etacov[4] = density_old*(2.*u_lb[i][j][k][0]*ucmx-ucmx*ucmx);
|
||||
etacov[5] = density_old*(2.*u_lb[i][j][k][1]*ucmy-ucmy*ucmy);
|
||||
etacov[6] = density_old*(2.*u_lb[i][j][k][2]*ucmz-ucmz*ucmz);
|
||||
etacov[7] = density_old*(u_lb[i][j][k][0]*ucmy+u_lb[i][j][k][1]*ucmx-ucmx*ucmy);
|
||||
etacov[8] = density_old*(u_lb[i][j][k][0]*ucmz+u_lb[i][j][k][2]*ucmx-ucmx*ucmz);
|
||||
etacov[9] = density_old*(u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][2]*ucmy-ucmy*ucmz);
|
||||
etacov[10] = 0.0;
|
||||
etacov[11] = 0.0;
|
||||
etacov[12] = 0.0;
|
||||
etacov[13] = 0.0;
|
||||
etacov[14] = 0.0;
|
||||
etacov[15] = 0.0;
|
||||
etacov[16] = 0.0;
|
||||
etacov[17] = 0.0;
|
||||
etacov[18] = 0.0;
|
||||
}
|
||||
|
||||
for (int l=0; l<numvel; l++)
|
||||
for (int ii=0; ii<numvel; ii++) {
|
||||
feqold[i][j][k][l] -= w_lb[l]*mg_lb[ii][l]*etacov[ii]*Ng_lb[ii];
|
||||
feqoldn[i][j][k][l] -= w_lb[l]*mg_lb[ii][l]*etacov[ii]*Ng_lb[ii];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fix_lb_fluid->parametercalc_full();
|
||||
//Subtract vcmall from the fluid.
|
||||
|
||||
// convert vcmall to lattice units used in lb/fluid
|
||||
double dx_lb = fix_lb_fluid->dx_lb;
|
||||
double dt_lb = fix_lb_fluid->dt_lb;
|
||||
vcmall[0] *= dt_lb/dx_lb;
|
||||
vcmall[1] *= dt_lb/dx_lb;
|
||||
vcmall[2] *= dt_lb/dx_lb;
|
||||
|
||||
double ucmx, ucmy, ucmz;
|
||||
ucmx = xflag ? vcmall[0] : 0.0;
|
||||
ucmy = yflag ? vcmall[1] : 0.0;
|
||||
ucmz = zflag ? vcmall[2] : 0.0;
|
||||
|
||||
int numvel = fix_lb_fluid->numvel;
|
||||
double etacov[14]; // This is for changes and only moments up to 13 are affected
|
||||
double rho;
|
||||
int subNbx = fix_lb_fluid->subNbx;
|
||||
int subNby = fix_lb_fluid->subNby;
|
||||
int subNbz = fix_lb_fluid->subNbz;
|
||||
double ***density_lb = fix_lb_fluid->density_lb;
|
||||
double ****f_lb = fix_lb_fluid->f_lb;
|
||||
double ****u_lb = fix_lb_fluid->u_lb;
|
||||
|
||||
etacov[0] = etacov[10] = etacov[11] = etacov[12] = etacov[13] = 0.0;
|
||||
|
||||
for(int i=0; i<subNbx; i++)
|
||||
for(int j=0; j<subNby; j++)
|
||||
for(int k=0; k<subNbz; k++){
|
||||
rho = density_lb[i][j][k];
|
||||
|
||||
etacov[1]=rho*ucmx;
|
||||
etacov[2]=rho*ucmy;
|
||||
etacov[3]=rho*ucmz;
|
||||
etacov[4]=rho*(2.*u_lb[i][j][k][0]*ucmx-ucmx*ucmx);
|
||||
etacov[5]=rho*(2.*u_lb[i][j][k][1]*ucmy-ucmy*ucmy);
|
||||
etacov[6]=rho*(2.*u_lb[i][j][k][2]*ucmz-ucmz*ucmz);
|
||||
etacov[7]=rho*(u_lb[i][j][k][0]*ucmy+u_lb[i][j][k][1]*ucmx-ucmx*ucmy);
|
||||
etacov[8]=rho*(u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][2]*ucmy-ucmy*ucmz);
|
||||
etacov[9]=rho*(u_lb[i][j][k][0]*ucmz+u_lb[i][j][k][2]*ucmx-ucmx*ucmz);
|
||||
|
||||
if (numvel==15) {
|
||||
etacov[13]=rho*(u_lb[i][j][k][0]*u_lb[i][j][k][1]*ucmz+u_lb[i][j][k][0]*ucmy*u_lb[i][j][k][2]-
|
||||
u_lb[i][j][k][0]*ucmy*ucmz+ucmx*u_lb[i][j][k][1]*u_lb[i][j][k][2]-
|
||||
ucmx*u_lb[i][j][k][1]*ucmz-ucmx*ucmy*u_lb[i][j][k][2]+
|
||||
ucmx*ucmy*ucmz);
|
||||
|
||||
for(int l=0; l<15; l++)
|
||||
for(int ii=1; ii<14; ii++){
|
||||
f_lb[i][j][k][l] -= w_lb15[l]*mg_lb15[ii][l]*etacov[ii]*Ng_lb15[ii];
|
||||
}
|
||||
}
|
||||
else // 19-velocity model
|
||||
for(int l=0; l<19; l++)
|
||||
for(int ii=1; ii<14; ii++){
|
||||
f_lb[i][j][k][l] -= w_lb19[l]*mg_lb19[ii][l]*etacov[ii]*Ng_lb19[ii];
|
||||
}
|
||||
|
||||
if(xflag) u_lb[i][j][k][0] -= vcmall[0];
|
||||
if(yflag) u_lb[i][j][k][1] -= vcmall[1];
|
||||
if(zflag) u_lb[i][j][k][2] -= vcmall[2];
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
http://www.lammps.org/, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
@ -13,7 +13,7 @@
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(lb/momentum,FixLbMomentum);
|
||||
FixStyle(lb/momentum,FixLbMomentum)
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
@ -23,7 +23,7 @@ FixStyle(lb/momentum,FixLbMomentum);
|
||||
#include "fix.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
|
||||
class FixLbMomentum : public Fix {
|
||||
public:
|
||||
FixLbMomentum(class LAMMPS *, int, char **);
|
||||
@ -33,13 +33,14 @@ class FixLbMomentum : public Fix {
|
||||
|
||||
private:
|
||||
int linear;
|
||||
int xflag, yflag, zflag;
|
||||
int xflag,yflag,zflag;
|
||||
double masstotal;
|
||||
int count;
|
||||
|
||||
class FixLbFluid *fix_lb_fluid;
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -1,469 +0,0 @@
|
||||
// clang-format off
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing authors: Frances Mackay, Santtu Ollila, Colin Denniston (UWO)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_lb_pc.h"
|
||||
#include <cmath>
|
||||
#include <cstring>
|
||||
#include "atom.h"
|
||||
#include "force.h"
|
||||
#include "update.h"
|
||||
#include "error.h"
|
||||
#include "memory.h"
|
||||
#include "domain.h"
|
||||
#include "fix_lb_fluid.h"
|
||||
#include "modify.h"
|
||||
|
||||
#include "group.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixLbPC::FixLbPC(LAMMPS *lmp, int narg, char **arg) :
|
||||
Fix(lmp, narg, arg)
|
||||
{
|
||||
if (narg < 3)
|
||||
error->all(FLERR,"Illegal fix lb/pc command");
|
||||
|
||||
time_integrate = 1;
|
||||
|
||||
// perform initial allocation of atom-based array
|
||||
// register with Atom class
|
||||
|
||||
force_old = nullptr;
|
||||
up = nullptr;
|
||||
up_old = nullptr;
|
||||
grow_arrays(atom->nmax);
|
||||
atom->add_callback(Atom::GROW);
|
||||
|
||||
Gamma_MD = new double[atom->ntypes+1];
|
||||
|
||||
int groupbit_lb_fluid = 0;
|
||||
for (int ifix=0; ifix<modify->nfix; ifix++)
|
||||
if (strcmp(modify->fix[ifix]->style,"lb/fluid")==0) {
|
||||
fix_lb_fluid = (FixLbFluid *)modify->fix[ifix];
|
||||
groupbit_lb_fluid = group->bitmask[modify->fix[ifix]->igroup];
|
||||
}
|
||||
|
||||
if (groupbit_lb_fluid == 0)
|
||||
error->all(FLERR,"the lb/fluid fix must also be used if using the lb/pc fix");
|
||||
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
for (int j=0; j<nlocal; j++) {
|
||||
if ((mask[j] & groupbit) && !(mask[j] & groupbit_lb_fluid))
|
||||
error->one(FLERR,"can only use the lb/pc fix for an atom if also using the lb/fluid fix for that atom");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixLbPC::~FixLbPC() {
|
||||
|
||||
atom->delete_callback(id,Atom::GROW);
|
||||
|
||||
memory->destroy(force_old);
|
||||
memory->destroy(up);
|
||||
memory->destroy(up_old);
|
||||
|
||||
delete [] Gamma_MD;
|
||||
}
|
||||
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
int FixLbPC::setmask()
|
||||
{
|
||||
int mask = 0;
|
||||
mask |= INITIAL_INTEGRATE;
|
||||
mask |= FINAL_INTEGRATE;
|
||||
return mask;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void FixLbPC::init()
|
||||
{
|
||||
double *Gamma = fix_lb_fluid->Gamma;
|
||||
double dm_lb = fix_lb_fluid->dm_lb;
|
||||
double dt_lb = fix_lb_fluid->dt_lb;
|
||||
|
||||
MPI_Comm_rank(world,&me);
|
||||
|
||||
dtv = update->dt;
|
||||
dtf = update->dt * force->ftm2v;
|
||||
|
||||
for (int i=0; i<=atom->ntypes; i++)
|
||||
Gamma_MD[i] = Gamma[i]*dm_lb/dt_lb;
|
||||
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
void FixLbPC::initial_integrate(int /*vflag*/) {
|
||||
|
||||
double dtfm;
|
||||
|
||||
double **x = atom->x;
|
||||
double dx[3];
|
||||
double **v = atom->v;
|
||||
double **f = atom->f;
|
||||
double *mass = atom->mass;
|
||||
double *rmass = atom->rmass;
|
||||
int *type = atom->type;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
if (igroup == atom->firstgroup) nlocal = atom->nfirst;
|
||||
|
||||
compute_up();
|
||||
|
||||
for (int i=0; i<nlocal; i++) {
|
||||
up_old[i][0] = up[i][0];
|
||||
up_old[i][1] = up[i][1];
|
||||
up_old[i][2] = up[i][2];
|
||||
force_old[i][0] = f[i][0];
|
||||
force_old[i][1] = f[i][1];
|
||||
force_old[i][2] = f[i][2];
|
||||
}
|
||||
|
||||
|
||||
if (rmass) {
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
if (mask[i] & groupbit) {
|
||||
dtfm = dtf/rmass[i];
|
||||
expminusdttimesgamma = exp(-dtv*Gamma_MD[type[i]]/rmass[i]);
|
||||
|
||||
dx[0] = dtv*v[i][0] + 0.5*(f[i][0]*force->ftm2v - Gamma_MD[type[i]]*(v[i][0]-up[i][0]))*dtv*dtv/rmass[i];
|
||||
dx[1] = dtv*v[i][1] + 0.5*(f[i][1]*force->ftm2v - Gamma_MD[type[i]]*(v[i][1]-up[i][1]))*dtv*dtv/rmass[i];
|
||||
dx[2] = dtv*v[i][2] + 0.5*(f[i][2]*force->ftm2v - Gamma_MD[type[i]]*(v[i][2]-up[i][2]))*dtv*dtv/rmass[i];
|
||||
|
||||
x[i][0] += dx[0];
|
||||
x[i][1] += dx[1];
|
||||
x[i][2] += dx[2];
|
||||
|
||||
// Approximation for v
|
||||
if (Gamma_MD[type[i]] == 0.0) {
|
||||
v[i][0] += f[i][0]*dtfm;
|
||||
v[i][1] += f[i][1]*dtfm;
|
||||
v[i][2] += f[i][2]*dtfm;
|
||||
} else {
|
||||
v[i][0] = (v[i][0]-up[i][0]-f[i][0]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][0]*force->ftm2v/Gamma_MD[type[i]] + up[i][0];
|
||||
v[i][1] = (v[i][1]-up[i][1]-f[i][1]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][1]*force->ftm2v/Gamma_MD[type[i]] + up[i][1];
|
||||
v[i][2] = (v[i][2]-up[i][2]-f[i][2]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][2]*force->ftm2v/Gamma_MD[type[i]] + up[i][2];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
// this does NOT take varying masses into account
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
if (mask[i] & groupbit) {
|
||||
dtfm = dtf/mass[type[i]];
|
||||
expminusdttimesgamma = exp(-dtv*Gamma_MD[type[i]]/mass[type[i]]);
|
||||
|
||||
dx[0] = dtv*v[i][0] + 0.5*(f[i][0]*force->ftm2v - Gamma_MD[type[i]]*(v[i][0]-up[i][0]))*dtv*dtv/mass[type[i]];
|
||||
dx[1] = dtv*v[i][1] + 0.5*(f[i][1]*force->ftm2v - Gamma_MD[type[i]]*(v[i][1]-up[i][1]))*dtv*dtv/mass[type[i]];
|
||||
dx[2] = dtv*v[i][2] + 0.5*(f[i][2]*force->ftm2v - Gamma_MD[type[i]]*(v[i][2]-up[i][2]))*dtv*dtv/mass[type[i]];
|
||||
|
||||
x[i][0] += dx[0];
|
||||
x[i][1] += dx[1];
|
||||
x[i][2] += dx[2];
|
||||
|
||||
// Approximation for v
|
||||
if (Gamma_MD[type[i]] == 0.0) {
|
||||
v[i][0] += f[i][0]*dtfm;
|
||||
v[i][1] += f[i][1]*dtfm;
|
||||
v[i][2] += f[i][2]*dtfm;
|
||||
} else {
|
||||
v[i][0] = (v[i][0]-up[i][0]-f[i][0]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][0]*force->ftm2v/Gamma_MD[type[i]] + up[i][0];
|
||||
v[i][1] = (v[i][1]-up[i][1]-f[i][1]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][1]*force->ftm2v/Gamma_MD[type[i]] + up[i][1];
|
||||
v[i][2] = (v[i][2]-up[i][2]-f[i][2]*force->ftm2v/Gamma_MD[type[i]])*expminusdttimesgamma +
|
||||
f[i][2]*force->ftm2v/Gamma_MD[type[i]] + up[i][2];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
void FixLbPC::final_integrate()
|
||||
{
|
||||
double dtfm;
|
||||
double **v = atom->v;
|
||||
double **f = atom->f;
|
||||
double *mass = atom->mass;
|
||||
double *rmass = atom->rmass;
|
||||
int *type = atom->type;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
if (igroup == atom->firstgroup) nlocal = atom->nfirst;
|
||||
|
||||
compute_up();
|
||||
|
||||
if (rmass) {
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
if (mask[i] & groupbit) {
|
||||
dtfm = dtf/rmass[i];
|
||||
expminusdttimesgamma = exp(-dtv*Gamma_MD[type[i]]/rmass[i]);
|
||||
DMDcoeff = (dtv - rmass[i]*(1.0-expminusdttimesgamma)/Gamma_MD[type[i]]);
|
||||
|
||||
if (Gamma_MD[type[i]] == 0.0) {
|
||||
v[i][0] += 0.5*(f[i][0] - force_old[i][0])*dtfm;
|
||||
v[i][1] += 0.5*(f[i][1] - force_old[i][1])*dtfm;
|
||||
v[i][2] += 0.5*(f[i][2] - force_old[i][2])*dtfm;
|
||||
} else {
|
||||
v[i][0] += DMDcoeff*((f[i][0] - force_old[i][0])*force->ftm2v/Gamma_MD[type[i]] + up[i][0] - up_old[i][0])/dtv;
|
||||
v[i][1] += DMDcoeff*((f[i][1] - force_old[i][1])*force->ftm2v/Gamma_MD[type[i]] + up[i][1] - up_old[i][1])/dtv;
|
||||
v[i][2] += DMDcoeff*((f[i][2] - force_old[i][2])*force->ftm2v/Gamma_MD[type[i]] + up[i][2] - up_old[i][2])/dtv;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// this does NOT take varying masses into account
|
||||
for (int i = 0; i < nlocal; i++) {
|
||||
if (mask[i] & groupbit) {
|
||||
dtfm = dtf/mass[type[i]];
|
||||
expminusdttimesgamma = exp(-dtv*Gamma_MD[type[i]]/mass[type[i]]);
|
||||
DMDcoeff = (dtv - mass[type[i]]*(1.0-expminusdttimesgamma)/Gamma_MD[type[i]]);
|
||||
|
||||
if (Gamma_MD[type[i]] == 0.0) {
|
||||
v[i][0] += 0.5*(f[i][0] - force_old[i][0])*dtfm;
|
||||
v[i][1] += 0.5*(f[i][1] - force_old[i][1])*dtfm;
|
||||
v[i][2] += 0.5*(f[i][2] - force_old[i][2])*dtfm;
|
||||
} else {
|
||||
v[i][0] += DMDcoeff*((f[i][0] - force_old[i][0])*force->ftm2v/Gamma_MD[type[i]] + up[i][0] - up_old[i][0])/dtv;
|
||||
v[i][1] += DMDcoeff*((f[i][1] - force_old[i][1])*force->ftm2v/Gamma_MD[type[i]] + up[i][1] - up_old[i][1])/dtv;
|
||||
v[i][2] += DMDcoeff*((f[i][2] - force_old[i][2])*force->ftm2v/Gamma_MD[type[i]] + up[i][2] - up_old[i][2])/dtv;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
allocate atom-based array
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void FixLbPC::grow_arrays(int nmax)
|
||||
{
|
||||
|
||||
memory->grow(force_old,nmax,3,"FixLbPC:force_old");
|
||||
memory->grow(up_old,nmax,3,"FixLbPC:up_old");
|
||||
memory->grow(up,nmax,3,"FixLbPC:up");
|
||||
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
copy values within local atom-based array
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void FixLbPC::copy_arrays(int i, int j, int /*delflag*/)
|
||||
{
|
||||
|
||||
force_old[j][0] = force_old[i][0];
|
||||
force_old[j][1] = force_old[i][1];
|
||||
force_old[j][2] = force_old[i][2];
|
||||
up_old[j][0] = up_old[i][0];
|
||||
up_old[j][1] = up_old[i][1];
|
||||
up_old[j][2] = up_old[i][2];
|
||||
up[j][0] = up[i][0];
|
||||
up[j][1] = up[i][1];
|
||||
up[j][2] = up[i][2];
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
pack values in local atom-based array for exchange with another proc
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int FixLbPC::pack_exchange(int i, double *buf)
|
||||
{
|
||||
|
||||
buf[0] = force_old[i][0];
|
||||
buf[1] = force_old[i][1];
|
||||
buf[2] = force_old[i][2];
|
||||
buf[3] = up_old[i][0];
|
||||
buf[4] = up_old[i][1];
|
||||
buf[5] = up_old[i][2];
|
||||
buf[6] = up[i][0];
|
||||
buf[7] = up[i][1];
|
||||
buf[8] = up[i][2];
|
||||
|
||||
return 9;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
unpack values in local atom-based array from exchange with another proc
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int FixLbPC::unpack_exchange(int nlocal, double *buf)
|
||||
{
|
||||
|
||||
force_old[nlocal][0] = buf[0];
|
||||
force_old[nlocal][1] = buf[1];
|
||||
force_old[nlocal][2] = buf[2];
|
||||
up_old[nlocal][0] = buf[3];
|
||||
up_old[nlocal][1] = buf[4];
|
||||
up_old[nlocal][2] = buf[5];
|
||||
up[nlocal][0] = buf[6];
|
||||
up[nlocal][1] = buf[7];
|
||||
up[nlocal][2] = buf[8];
|
||||
|
||||
return 9;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
void FixLbPC::compute_up()
|
||||
{
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
double **x = atom->x;
|
||||
int i,k;
|
||||
int ix,iy,iz;
|
||||
int ixp,iyp,izp;
|
||||
double dx1,dy1,dz1;
|
||||
int isten,ii,jj,kk;
|
||||
double r,rsq,weightx,weighty,weightz;
|
||||
double ****u_lb = fix_lb_fluid->u_lb;
|
||||
int subNbx = fix_lb_fluid->subNbx;
|
||||
int subNby = fix_lb_fluid->subNby;
|
||||
int subNbz = fix_lb_fluid->subNbz;
|
||||
double dx_lb = fix_lb_fluid->dx_lb;
|
||||
double dt_lb = fix_lb_fluid->dt_lb;
|
||||
double FfP[64];
|
||||
int trilinear_stencil = fix_lb_fluid->trilinear_stencil;
|
||||
|
||||
for (i=0; i<nlocal; i++) {
|
||||
if (mask[i] & groupbit) {
|
||||
|
||||
//Calculate nearest leftmost grid point.
|
||||
//Since array indices from 1 to subNb-2 correspond to the
|
||||
// local subprocessor domain (not indices from 0), use the
|
||||
// ceiling value.
|
||||
ix = (int)ceil((x[i][0]-domain->sublo[0])/dx_lb);
|
||||
iy = (int)ceil((x[i][1]-domain->sublo[1])/dx_lb);
|
||||
iz = (int)ceil((x[i][2]-domain->sublo[2])/dx_lb);
|
||||
|
||||
//Calculate distances to the nearest points.
|
||||
dx1 = x[i][0] - (domain->sublo[0] + (ix-1)*dx_lb);
|
||||
dy1 = x[i][1] - (domain->sublo[1] + (iy-1)*dx_lb);
|
||||
dz1 = x[i][2] - (domain->sublo[2] + (iz-1)*dx_lb);
|
||||
|
||||
// Need to convert these to lattice units:
|
||||
dx1 = dx1/dx_lb;
|
||||
dy1 = dy1/dx_lb;
|
||||
dz1 = dz1/dx_lb;
|
||||
|
||||
up[i][0]=0.0; up[i][1]=0.0; up[i][2]=0.0;
|
||||
if (trilinear_stencil==0) {
|
||||
isten=0;
|
||||
for (ii=-1; ii<3; ii++) {
|
||||
rsq=(-dx1+ii)*(-dx1+ii);
|
||||
|
||||
if (rsq>=4) {
|
||||
weightx=0.0;
|
||||
} else {
|
||||
r=sqrt(rsq);
|
||||
if (rsq>1) {
|
||||
weightx=(5.0-2.0*r-sqrt(-7.0+12.0*r-4.0*rsq))/8.;
|
||||
} else {
|
||||
weightx=(3.0-2.0*r+sqrt(1.0+4.0*r-4.0*rsq))/8.;
|
||||
}
|
||||
}
|
||||
for (jj=-1; jj<3; jj++) {
|
||||
rsq=(-dy1+jj)*(-dy1+jj);
|
||||
if (rsq>=4) {
|
||||
weighty=0.0;
|
||||
} else {
|
||||
r=sqrt(rsq);
|
||||
if (rsq>1) {
|
||||
weighty=(5.0-2.0*r-sqrt(-7.0+12.0*r-4.0*rsq))/8.;
|
||||
} else {
|
||||
weighty=(3.0-2.0*r+sqrt(1.0+4.0*r-4.0*rsq))/8.;
|
||||
}
|
||||
}
|
||||
for (kk=-1; kk<3; kk++) {
|
||||
rsq=(-dz1+kk)*(-dz1+kk);
|
||||
if (rsq>=4) {
|
||||
weightz=0.0;
|
||||
} else {
|
||||
r=sqrt(rsq);
|
||||
if (rsq>1) {
|
||||
weightz=(5.0-2.0*r-sqrt(-7.0+12.0*r-4.0*rsq))/8.;
|
||||
} else {
|
||||
weightz=(3.0-2.0*r+sqrt(1.0+4.0*r-4.0*rsq))/8.;
|
||||
}
|
||||
}
|
||||
ixp = ix+ii;
|
||||
iyp = iy+jj;
|
||||
izp = iz+kk;
|
||||
|
||||
|
||||
if (ixp==-1) ixp=subNbx+2;
|
||||
if (iyp==-1) iyp=subNby+2;
|
||||
if (izp==-1) izp=subNbz+2;
|
||||
|
||||
FfP[isten] = weightx*weighty*weightz;
|
||||
// interpolated velocity based on delta function.
|
||||
for (k=0; k<3; k++) {
|
||||
up[i][k] += u_lb[ixp][iyp][izp][k]*FfP[isten];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
FfP[0] = (1.-dx1)*(1.-dy1)*(1.-dz1);
|
||||
FfP[1] = (1.-dx1)*(1.-dy1)*dz1;
|
||||
FfP[2] = (1.-dx1)*dy1*(1.-dz1);
|
||||
FfP[3] = (1.-dx1)*dy1*dz1;
|
||||
FfP[4] = dx1*(1.-dy1)*(1.-dz1);
|
||||
FfP[5] = dx1*(1.-dy1)*dz1;
|
||||
FfP[6] = dx1*dy1*(1.-dz1);
|
||||
FfP[7] = dx1*dy1*dz1;
|
||||
|
||||
ixp = (ix+1);
|
||||
iyp = (iy+1);
|
||||
izp = (iz+1);
|
||||
|
||||
for (k=0; k<3; k++) { // tri-linearly interpolated velocity at node
|
||||
up[i][k] = u_lb[ix][iy][iz][k]*FfP[0]
|
||||
+ u_lb[ix][iy][izp][k]*FfP[1]
|
||||
+ u_lb[ix][iyp][iz][k]*FfP[2]
|
||||
+ u_lb[ix][iyp][izp][k]*FfP[3]
|
||||
+ u_lb[ixp][iy][iz][k]*FfP[4]
|
||||
+ u_lb[ixp][iy][izp][k]*FfP[5]
|
||||
+ u_lb[ixp][iyp][iz][k]*FfP[6]
|
||||
+ u_lb[ixp][iyp][izp][k]*FfP[7];
|
||||
}
|
||||
}
|
||||
for (k=0; k<3; k++)
|
||||
up[i][k] = up[i][k]*dx_lb/dt_lb;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,60 +0,0 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(lb/pc,FixLbPC);
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
#ifndef LMP_FIX_LB_PC_H
|
||||
#define LMP_FIX_LB_PC_H
|
||||
|
||||
#include "fix.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class FixLbPC : public Fix {
|
||||
public:
|
||||
FixLbPC(class LAMMPS *, int, char **);
|
||||
~FixLbPC();
|
||||
int setmask();
|
||||
void init();
|
||||
void initial_integrate(int);
|
||||
void final_integrate();
|
||||
|
||||
void grow_arrays(int);
|
||||
void copy_arrays(int, int, int);
|
||||
// void set_arrays(int);
|
||||
int pack_exchange(int, double *);
|
||||
int unpack_exchange(int, double *);
|
||||
|
||||
private:
|
||||
double dtv, dtf;
|
||||
int me;
|
||||
double *Gamma_MD;
|
||||
double expminusdttimesgamma;
|
||||
double DMDcoeff;
|
||||
|
||||
double **force_old;
|
||||
double **up;
|
||||
double **up_old;
|
||||
|
||||
void compute_up();
|
||||
class FixLbFluid *fix_lb_fluid;
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,109 +0,0 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(lb/rigid/pc/sphere,FixLbRigidPCSphere);
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
#ifndef LMP_FIX_LB_RIGID_PC_SPHERE_H
|
||||
#define LMP_FIX_LB_RIGID_PC_SPHERE_H
|
||||
|
||||
#include "fix.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class FixLbRigidPCSphere : public Fix {
|
||||
public:
|
||||
FixLbRigidPCSphere(class LAMMPS *, int, char **);
|
||||
virtual ~FixLbRigidPCSphere();
|
||||
virtual int setmask();
|
||||
virtual void init();
|
||||
virtual void setup(int);
|
||||
virtual void initial_integrate(int);
|
||||
virtual void final_integrate();
|
||||
virtual double compute_scalar();
|
||||
|
||||
double memory_usage();
|
||||
void grow_arrays(int);
|
||||
void copy_arrays(int, int, int);
|
||||
void set_arrays(int);
|
||||
int pack_exchange(int, double *);
|
||||
int unpack_exchange(int, double *);
|
||||
|
||||
void pre_neighbor();
|
||||
int dof(int);
|
||||
void reset_dt();
|
||||
double compute_array(int, int);
|
||||
|
||||
private:
|
||||
double **up;
|
||||
double **up_old;
|
||||
double *Gamma_MD;
|
||||
double expminusdttimesgamma, DMDcoeff;
|
||||
double expminusdttimesgammadiv2;
|
||||
double force_factor, torque_factor;
|
||||
|
||||
double dtv, dtf;
|
||||
|
||||
int nbody; // # of rigid bodies
|
||||
int *nrigid; // # of atoms in each rigid body
|
||||
int *nrigid_shell;
|
||||
double *masstotal; // total mass of each rigid body
|
||||
double *masstotal_shell;
|
||||
double *sphereradius;
|
||||
double **xcm; // coords of center-of-mass of each rigid body
|
||||
double **xcm_old;
|
||||
double **vcm; // velocity of center-of-mass of each
|
||||
double **ucm;
|
||||
double **ucm_old;
|
||||
double **fcm; // force on center-of-mass of each
|
||||
double **fcm_old;
|
||||
double **fcm_fluid;
|
||||
double **omega; // angular momentum of each in space coords
|
||||
double **torque; // torque on each rigid body in space coords
|
||||
double **torque_old;
|
||||
double **torque_fluid;
|
||||
double **torque_fluid_old;
|
||||
double **rotate;
|
||||
imageint *imagebody; // image flags of xcm of each rigid body
|
||||
double **fflag; // flag for on/off of center-of-mass force
|
||||
double **tflag; // flag for on/off of center-of-mass torque
|
||||
|
||||
int *body; // which body each atom is part of (-1 if none)
|
||||
|
||||
double **sum, **all; // work vectors for each rigid body
|
||||
int **remapflag; // PBC remap flags for each rigid body
|
||||
|
||||
double tfactor; // scale factor on temperature of rigid bodies
|
||||
|
||||
int inner_nodes; // ==1 if certain particle are inside the rigid
|
||||
// body and should not interact with the fluid.
|
||||
// ==0 otherwise.
|
||||
int igroupinner; // specifies the particles which are inside the
|
||||
// spherical rigid body, and do not interact with
|
||||
// the fluid.
|
||||
|
||||
void set_xv();
|
||||
void set_v();
|
||||
|
||||
void compute_up();
|
||||
|
||||
class FixLbFluid *fix_lb_fluid;
|
||||
};
|
||||
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
#endif
|
||||
#endif
|
||||
@ -17,7 +17,6 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_lb_viscous.h"
|
||||
#include <cstring>
|
||||
#include "atom.h"
|
||||
#include "update.h"
|
||||
#include "respa.h"
|
||||
@ -38,22 +37,27 @@ FixLbViscous::FixLbViscous(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
int groupbit_lb_fluid = 0;
|
||||
|
||||
for (int ifix=0; ifix<modify->nfix; ifix++)
|
||||
if (strcmp(modify->fix[ifix]->style,"lb/fluid")==0) {
|
||||
for(int ifix=0; ifix<modify->nfix; ifix++)
|
||||
if(strcmp(modify->fix[ifix]->style,"lb/fluid")==0){
|
||||
fix_lb_fluid = (FixLbFluid *)modify->fix[ifix];
|
||||
groupbit_lb_fluid = group->bitmask[modify->fix[ifix]->igroup];
|
||||
}
|
||||
|
||||
if (groupbit_lb_fluid == 0)
|
||||
if(groupbit_lb_fluid == 0)
|
||||
error->all(FLERR,"the lb/fluid fix must also be used if using the lb/viscous fix");
|
||||
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
for (int j=0; j<nlocal; j++) {
|
||||
if ((mask[j] & groupbit) && !(mask[j] & groupbit_lb_fluid))
|
||||
for(int j=0; j<nlocal; j++){
|
||||
if((mask[j] & groupbit) && !(mask[j] & groupbit_lb_fluid))
|
||||
error->one(FLERR,"to apply a fluid force onto an atom, the lb/fluid fix must be used for that atom.");
|
||||
}
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixLbViscous::~FixLbViscous()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@ -73,7 +77,7 @@ int FixLbViscous::setmask()
|
||||
void FixLbViscous::init()
|
||||
{
|
||||
|
||||
if (utils::strmatch(update->integrate_style,"^respa"))
|
||||
if (strcmp(update->integrate_style,"respa") == 0)
|
||||
nlevels_respa = ((Respa *) update->integrate)->nlevels;
|
||||
|
||||
}
|
||||
@ -89,7 +93,6 @@ void FixLbViscous::setup(int vflag)
|
||||
post_force_respa(vflag,nlevels_respa-1,0);
|
||||
((Respa *) update->integrate)->copy_f_flevel(nlevels_respa-1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -108,17 +111,36 @@ void FixLbViscous::post_force(int /*vflag*/)
|
||||
// magnitude depends on atom type
|
||||
|
||||
double **f = atom->f;
|
||||
double *rmass = atom->rmass;
|
||||
double *mass = atom->mass;
|
||||
int *type = atom->type;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
if (igroup == atom->firstgroup) nlocal = atom->nfirst;
|
||||
double *massp = fix_lb_fluid->massp;
|
||||
double massfactor;
|
||||
double **hydroF = fix_lb_fluid->hydroF;
|
||||
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
f[i][0] += hydroF[i][0];
|
||||
f[i][1] += hydroF[i][1];
|
||||
f[i][2] += hydroF[i][2];
|
||||
if (rmass) {
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
massfactor = rmass[i]/(rmass[i]+massp[i]);
|
||||
|
||||
}
|
||||
f[i][0] = hydroF[i][0] + massfactor*f[i][0];
|
||||
f[i][1] = hydroF[i][1] + massfactor*f[i][1];
|
||||
f[i][2] = hydroF[i][2] + massfactor*f[i][2];
|
||||
}
|
||||
|
||||
} else {
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
massfactor = mass[type[i]]/(mass[type[i]]+massp[i]);
|
||||
|
||||
f[i][0] = hydroF[i][0] + massfactor*f[i][0];
|
||||
f[i][1] = hydroF[i][1] + massfactor*f[i][1];
|
||||
f[i][2] = hydroF[i][2] + massfactor*f[i][2];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -136,3 +158,4 @@ void FixLbViscous::min_post_force(int vflag)
|
||||
post_force(vflag);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
// clang-format off
|
||||
FixStyle(lb/viscous,FixLbViscous);
|
||||
FixStyle(lb/viscous,FixLbViscous)
|
||||
// clang-format on
|
||||
#else
|
||||
|
||||
@ -27,7 +27,7 @@ namespace LAMMPS_NS {
|
||||
class FixLbViscous : public Fix {
|
||||
public:
|
||||
FixLbViscous(class LAMMPS *, int, char **);
|
||||
virtual ~FixLbViscous() = default;
|
||||
~FixLbViscous();
|
||||
int setmask();
|
||||
void init();
|
||||
void setup(int);
|
||||
|
||||
Reference in New Issue
Block a user