snapmerge.c 2.28 KB
Newer Older
Simone Butzer's avatar
Simone Butzer committed
1 2 3 4
/*------------------------------------------------------------------------
 * Copyright (C) 2015 For the list of authors, see file AUTHORS.
 *
 * This file is part of IFOS3D.
Tilman Steinweg's avatar
Tilman Steinweg committed
5
 *
Simone Butzer's avatar
Simone Butzer committed
6 7 8
 * IFOS3D is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, version 2.0 of the License only.
Tilman Steinweg's avatar
Tilman Steinweg committed
9
 *
Simone Butzer's avatar
Simone Butzer committed
10 11 12 13
 * IFOS3D is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
Tilman Steinweg's avatar
Tilman Steinweg committed
14
 *
Simone Butzer's avatar
Simone Butzer committed
15
 * You should have received a copy of the GNU General Public License
Tilman Steinweg's avatar
Tilman Steinweg committed
16
 * along with IFOS3D. See file COPYING and/or
Simone Butzer's avatar
Simone Butzer committed
17 18 19 20
 * <http://www.gnu.org/licenses/gpl-2.0.html>.
--------------------------------------------------------------------------*/

/*------------------------------------------------------------------------
Tilman Steinweg's avatar
Tilman Steinweg committed
21
 *   loop over snapshotfiles which have to be merged.
Simone Butzer's avatar
Simone Butzer committed
22 23 24 25 26 27
 *  ----------------------------------------------------------------------*/

#include "fd.h"
#include "globvar.h"      /* definition of global variables  */


Tilman Steinweg's avatar
Tilman Steinweg committed
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
int main(int argc, char **argv) {

	int nsnap;
	char *fileinp="";
	//FILE *FP;
	fileinp = argv[1];


	if ((FP=fopen(fileinp,"r"))==NULL) {
		err(" Opening input file failed.");

	} else {
		printf(" Opening input file was successful.\n\n");
	}

	/* read parameters from parameter-file */

	if (strstr(fileinp,".json")) {
		//read json formated input file
		read_par_json(stdout, fileinp);
		fclose(FP);

	} else {
		//read "old" input file *.inp, might not work in future
		read_par(FP);
	}



	NXG=NX;
	NYG=NY;
	NZG=NZ;
	NX = NXG/NPROCX;
	NY = NYG/NPROCY;
	NZ = NZG/NPROCZ;

	nsnap=1+iround((TSNAP2-TSNAP1)/TSNAPINC);

	FP=stdout;

	switch (SNAP) {
		case 1 : /*particle velocity*/

			merge(nsnap,1);
			merge(nsnap,2);
			merge(nsnap,3);
			break;

		case 2 : /*pressure */
			merge(nsnap,6);
			break;

		case 4 : /*particle velocity*/
			merge(nsnap,1);
			merge(nsnap,2);
			merge(nsnap,3);

		case 3 :/*curl and divergence energy*/
			merge(nsnap,4);
			merge(nsnap,5);
			break;

		case 5 :/*Gradient/Model*/
			merge(0,7);
			merge(0,8);
			merge(0,9);
			break;

		default :
			warning(" snapmerge: cannot identify content of snapshot !");
			break;

	}

	return 0;
Simone Butzer's avatar
Simone Butzer committed
103 104

}