Lemina
A molecular dynamics package for network, granular material and point particles with a range of interaction potential.
Loading...
Searching...
No Matches
Trajectory.c
Go to the documentation of this file.
1
/*
2
* This file is part of Lamina.
3
*
4
* Lamina is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* Lamina is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with Lamina. If not, see <https://www.gnu.org/licenses/>.
16
17
Copyright (C) 2025 Harish Charan, University of Durham, UK
18
19
*/
20
21
22
#include<stdio.h>
23
#include"
global.h
"
24
25
void
Trajectory
(){
26
int
n;
27
//Trajectory file in LAMMPS dump format for OVITO visualization
28
fprintf(
fpxyz
,
"ITEM: TIMESTEP\n"
);
29
fprintf(
fpxyz
,
"%lf\n"
,
timeNow
);
30
fprintf(
fpxyz
,
"ITEM: NUMBER OF ATOMS\n"
);
31
fprintf(
fpxyz
,
"%d\n"
,
nAtom
);
32
fprintf(
fpxyz
,
"ITEM: BOX BOUNDS pp ff pp\n"
);
33
fprintf(
fpxyz
,
"%lf %lf xlo xhi\n"
, -
regionH
[1],
regionH
[1]);
34
fprintf(
fpxyz
,
"%lf %lf ylo yhi\n"
, -
regionH
[2],
regionH
[2]);
35
fprintf(
fpxyz
,
"%lf %lf zlo zhi\n"
, -0.1, 0.1);
36
fprintf(
fpxyz
,
"ITEM: ATOMS id mol type radius x y vx vy fx fy\n"
);
37
for
(n=1; n<=
nAtom
; n++)
38
fprintf(
fpxyz
,
"%d\t %d\t %d\t %0.2lf\t %0.16lf\t %0.16lf\t %0.16lf\t %0.16lf\t %0.16lf\t %0.16lf\n"
,
39
atomID
[n],
molID
[n],
atomType
[n],
atomRadius
[n],
rx
[n],
ry
[n],
vx
[n],
vy
[n],
fx
[n],
fy
[n]);
40
}
41
42
43
Trajectory
void Trajectory()
Definition
Trajectory.c:25
global.h
nAtom
int nAtom
Definition
global.h:24
fpxyz
FILE * fpxyz
molID
int * molID
vx
double * vx
Definition
global.h:17
rx
double * rx
fy
double * fy
Definition
global.h:17
atomRadius
double * atomRadius
timeNow
double timeNow
Definition
global.h:20
atomType
int * atomType
vy
double * vy
Definition
global.h:17
regionH
double regionH[2+1]
Definition
global.h:20
atomID
int * atomID
fx
double * fx
Definition
global.h:17
ry
double * ry
Definition
global.h:17
source
Trajectory.c
Generated by
1.13.2