forked from etmc/tmLQCD
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathread_input.h
136 lines (120 loc) · 3.78 KB
/
read_input.h
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
/***********************************************************************
* Copyright (C) 2002,2003,2004,2005,2006,2007,2008 Carsten Urbach
*
* This file is part of tmLQCD.
*
* tmLQCD 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, either version 3 of the License, or
* (at your option) any later version.
*
* tmLQCD 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.
*
* You should have received a copy of the GNU General Public License
* along with tmLQCD. If not, see <http://www.gnu.org/licenses/>.
***********************************************************************/
/*
* This is the function to parse the input file.
* No default values for any paramter will be set
*
* read_inputg expects the filename of the input file
* as an input parameter.
*
* read_input returns 2 if the input file did not exist
*/
#ifndef _PARSER_H
#define _PARSER_H
#define COLD 0
#define HOT 1
#define RESTART 2
#define CONTINUE 3
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
/* input parameters defined in */
/* read_input.h */
extern int verbose;
extern int startoption;
extern int Ntherm;
extern int Nmeas;
extern int Nsave;
extern int gmres_m_parameter, gmresdr_nr_ev;
extern int write_cp_flag;
extern int cp_interval;
extern int nstore;
extern int nscalar;
extern int crylov_space_dim;
extern char rlxd_input_filename[500];
extern char gauge_input_filename[500];
extern char scalar_input_filename[500];
extern int subforwilson_flag;
extern int eigenvalue_method_flag;
extern int eigenvalue_max_iterations;
extern double eigenvalue_precision;
extern int index_start;
extern int index_end;
extern int random_seed;
extern int rlxd_level;
extern double X0, X1, X2, X3;
extern int read_source_flag;
extern int return_check_flag;
extern int return_check_interval;
extern int gauge_precision_read_flag;
extern int gauge_precision_write_flag;
extern int scalar_precision_read_flag;
extern int scalar_precision_write_flag;
extern int reproduce_randomnumber_flag;
extern double stout_rho;
extern int stout_no_iter;
extern int use_stout_flag;
extern int phmc_no_flavours;
extern int phmc_heavy_timescale;
extern int phmc_compute_evs;
extern int phmc_exact_poly;
extern int compute_evs;
extern int no_eigenvalues;
extern double eigenvalue_precision;
extern double stilde_max;
extern double stilde_min;
extern int degree_of_p;
extern int source_location;
extern int sub_evs_cg_flag;
extern int even_odd_flag;
extern int bc_flag;
extern int online_measurement_flag;
extern int online_measurement_freq;
extern int reweighting_flag;
extern int reweighting_samples;
extern int no_samples;
extern int compute_modenumber;
extern int compute_topsus;
extern double mstarsq;
extern int no_sources_z2;
extern int usegpu_flag;
extern int max_innersolver_it;
extern double innersolver_precision;
extern int device_num;
extern int max_mms_shifts;
extern int use_mixed_mms;
extern double innersolver_precision_abs;
extern double innersolver_precision_rel;
extern int innersolver_precision_check_abs;
extern int innersolver_precision_check_rel;
extern int min_innersolver_it;
extern double mixcg_innereps;
extern int mixcg_maxinnersolverit;
extern int omp_num_threads;
extern int use_preconditioning;
extern int use_qudainverter;
extern int nblocks_t, nblocks_x, nblocks_y, nblocks_z;
extern int have_bsm_op;
int read_input(char *);
int reread_input(char *);
#ifdef __cplusplus
}
#endif
#endif