From cac1bf83ef42d9f908354f02c5153714bb89ae6c Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Wed, 10 May 2017 19:41:48 -0400 Subject: [PATCH 1/3] Work around VTK 7 API change --- src/USER-VTK/dump_vtk.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/USER-VTK/dump_vtk.cpp b/src/USER-VTK/dump_vtk.cpp index 0aa749e73b..4a0c1618a6 100644 --- a/src/USER-VTK/dump_vtk.cpp +++ b/src/USER-VTK/dump_vtk.cpp @@ -94,6 +94,12 @@ enum{VTK,VTP,VTU,PVTP,PVTU}; // file formats #define ONEFIELD 32 #define DELTA 1048576 +#if VTK_MAJOR_VERSION == 7 +#define InsertNextTupleValue InsertNextTypedTuple +#elif VTK_MAJOR_VERSION > 7 +#error This code has only been tested with VTK 5, 6, and 7 +#endif + /* ---------------------------------------------------------------------- */ DumpVTK::DumpVTK(LAMMPS *lmp, int narg, char **arg) : From c4ac5773cb0ae0a46742cab6f9730472158ede26 Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Wed, 10 May 2017 19:44:00 -0400 Subject: [PATCH 2/3] Fix segmentation fault in dump vtk --- src/USER-VTK/dump_vtk.cpp | 7 +++++++ src/dump_custom.cpp | 12 ++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/USER-VTK/dump_vtk.cpp b/src/USER-VTK/dump_vtk.cpp index 4a0c1618a6..78be5668cf 100644 --- a/src/USER-VTK/dump_vtk.cpp +++ b/src/USER-VTK/dump_vtk.cpp @@ -167,6 +167,13 @@ DumpVTK::DumpVTK(LAMMPS *lmp, int narg, char **arg) : header_choice = NULL; write_choice = NULL; boxcorners = NULL; + + // unsupported feature by dump vtk + delete [] vformat; + vformat = NULL; + + delete [] format_column_user; + format_column_user = NULL; } /* ---------------------------------------------------------------------- */ diff --git a/src/dump_custom.cpp b/src/dump_custom.cpp index 44842619fe..9df0264e55 100644 --- a/src/dump_custom.cpp +++ b/src/dump_custom.cpp @@ -244,11 +244,15 @@ DumpCustom::~DumpCustom() for (int i = 1; i <= ntypes; i++) delete [] typenames[i]; delete [] typenames; - for (int i = 0; i < size_one; i++) delete [] vformat[i]; - delete [] vformat; + if(vformat) { + for (int i = 0; i < size_one; i++) delete [] vformat[i]; + delete [] vformat; + } - for (int i = 0; i < size_one; i++) delete [] format_column_user[i]; - delete [] format_column_user; + if(format_column_user) { + for (int i = 0; i < size_one; i++) delete [] format_column_user[i]; + delete [] format_column_user; + } delete [] columns; } From 4ecf876a645390313f88632340d23efa217e5f32 Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Wed, 10 May 2017 19:48:54 -0400 Subject: [PATCH 3/3] Added two examples of using the VTK dump style --- examples/USER/vtk/.gitignore | 1 + examples/USER/vtk/in.vtk | 35 +++++++++++++++++++++++++++++++++++ examples/USER/vtk/in.vtp | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 examples/USER/vtk/.gitignore create mode 100644 examples/USER/vtk/in.vtk create mode 100644 examples/USER/vtk/in.vtp diff --git a/examples/USER/vtk/.gitignore b/examples/USER/vtk/.gitignore new file mode 100644 index 0000000000..995bba6cb2 --- /dev/null +++ b/examples/USER/vtk/.gitignore @@ -0,0 +1 @@ +dump diff --git a/examples/USER/vtk/in.vtk b/examples/USER/vtk/in.vtk new file mode 100644 index 0000000000..6c294d2332 --- /dev/null +++ b/examples/USER/vtk/in.vtk @@ -0,0 +1,35 @@ +# 3d Lennard-Jones melt + +units lj +atom_style atomic + +lattice fcc 0.8442 +region box block 0 10 0 10 0 10 +create_box 1 box +create_atoms 1 box +mass 1 1.0 + +velocity all create 3.0 87287 + +pair_style lj/cut 2.5 +pair_coeff 1 1 1.0 1.0 2.5 + +neighbor 0.3 bin +neigh_modify every 20 delay 0 check no + +fix 1 all nve + +shell mkdir dump + +dump dmpvtk all vtk 50 dump/dump*.vtk id type vx vy vz fx fy fz + +#dump 2 all image 25 image.*.jpg type type & +# axes yes 0.8 0.02 view 60 -30 +#dump_modify 2 pad 3 + +#dump 3 all movie 25 movie.mpg type type & +# axes yes 0.8 0.02 view 60 -30 +#dump_modify 3 pad 3 + +thermo 50 +run 250 diff --git a/examples/USER/vtk/in.vtp b/examples/USER/vtk/in.vtp new file mode 100644 index 0000000000..ff5ab8d9ab --- /dev/null +++ b/examples/USER/vtk/in.vtp @@ -0,0 +1,35 @@ +# 3d Lennard-Jones melt + +units lj +atom_style atomic + +lattice fcc 0.8442 +region box block 0 10 0 10 0 10 +create_box 1 box +create_atoms 1 box +mass 1 1.0 + +velocity all create 3.0 87287 + +pair_style lj/cut 2.5 +pair_coeff 1 1 1.0 1.0 2.5 + +neighbor 0.3 bin +neigh_modify every 20 delay 0 check no + +fix 1 all nve + +shell mkdir dump + +dump dmpvtk all vtk 50 dump/dump*.vtp id type vx vy vz fx fy fz + +#dump 2 all image 25 image.*.jpg type type & +# axes yes 0.8 0.02 view 60 -30 +#dump_modify 2 pad 3 + +#dump 3 all movie 25 movie.mpg type type & +# axes yes 0.8 0.02 view 60 -30 +#dump_modify 3 pad 3 + +thermo 50 +run 250