-
Notifications
You must be signed in to change notification settings - Fork 47
/
default_input_values.h
248 lines (226 loc) · 8.19 KB
/
default_input_values.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
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
/***********************************************************************
* Copyright (C) 2002,2003,2004,2005,2006,2007,2008 Carsten Urbach
*
* This file is part of tmLQCD.
*
* Modified by Jenifer Gonzalez Lopez 01/04/2009
*
* 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 header file contains default values
* for all input parameter, set in
* read_input.c
*
* Autor: Carsten Urbach
*************************************************/
#ifndef _DEFAULT_INPUT_VALUES_H
#define _DEFAULT_INPUT_VALUES_H
#include "misc_types.h"
#include <float.h>
#define _default_T_global 4
#define _default_L 4
#define _default_LX 0
#define _default_LY 0
#define _default_LZ 0
#define _default_N_PROC_X 1
#define _default_N_PROC_Y 1
#define _default_N_PROC_Z 1
#define _default_g_kappa 0.125
#define _default_g_acc_Ptilde 1.e-06
#define _default_g_acc_Hfin 1.e-04
#define _default_g_rec_ev 0
#define _default_g_mubar 0.0
#define _default_g_epsbar 0.0
#define _default_g_mu 0.0
#define _default_g_mu1 0.0
#define _default_g_mu2 0.0
#define _default_g_mu3 0.0
#define _default_g_shift 0.0
#define _default_c_sw -1.0
#define _default_g_beta 6.0
#define _default_g_N_s 20
#define _default_g_dflgcr_flag 0
#define _default_little_evenodd 0
#define _default_usePL 0
#define _default_little_solver 0
#define _default_little_gmres_m_parameter 50
#define _default_little_solver_max_iter 20
#define _default_little_solver_low_prec 1.0e-2
#define _default_little_solver_high_prec 1.0e-10
#define _default_Msap_precon 1
#define _default_NiterMsap 3
#define _default_NcycleMsap 2
#define _default_kappa_Msap -1.
#define _default_mu_Msap -20.
#define _default_NiterMsap_dflgen 4
#define _default_NcycleMsap_dflgen 4
#define _default_NsmoothMsap_dflgen 2
#define _default_kappa_dflgen -1.
#define _default_mu_dflgen -20.
#define _default_kappa_dfl -1.
#define _default_mu_dfl -20.
#define _default_random_seed 123456
#define _default_rlxd_level 1
#define _default_solver_flag 1 // this is CG (see solver/solver_types.h)
#define _default_nd_solver_flag 15 // this is CGMMSND (see solver/solver_types.h)
#define _default_HB_solver_flag 26 // this is INVALID_SOLVER (see solver/solver_types.h)
#define _default_startoption 0
#define _default_Ntherm 0
#define _default_Nmeas 1
#define _default_Nsave 9
#define _default_write_cp_flag 1
#define _default_cp_interval 5
#define _default_nstore 0
#define _default_rlxd_input_filename "last_state"
#define _default_gauge_input_filename "conf"
#define _default_read_source_flag 0
#define _default_source_filename "source"
#define _default_g_stdio_proc 0
#define _default_index_start 0
#define _default_index_end 12
#define _default_X0 0.
#define _default_X1 0.
#define _default_X2 0.
#define _default_X3 0.
#define _default_max_solver_iterations 5000
#define _default_solver_precision 1.e-15
#define _default_g_rgi_C1 0.
#define _default_g_eps_sq_force 1.0e-7
#define _default_g_eps_sq_acc 1.0e-16
#define _default_g_eps_sq_force1 -1.
#define _default_g_eps_sq_acc1 -1.
#define _default_g_eps_sq_force2 -1.
#define _default_g_eps_sq_acc2 -1.
#define _default_g_eps_sq_force3 -1.
#define _default_g_eps_sq_acc3 -1.
#define _default_g_relative_precision_flag 0
#define _default_g_strict_residual_check 0
#define _default_return_check_flag 0
#define _default_return_check_interval 100
#define _default_g_debug_level 1
#define _default_g_csg_N 0
#define _default_2mn_lambda 0.1938
#define _default_source_format_flag 0
#define _default_source_time_slice 0
#define _default_automaticTS 0
#define _default_gmres_m_parameter 10
#define _default_gmresdr_nr_ev 0
#define _default_gauge_precision_read_flag 64
#define _default_gauge_precision_write_flag 64
#define _default_g_disable_IO_checks 0
#define _default_prop_precision_flag 64
#define _default_write_prop_flag 1
#define _default_reproduce_randomnumber_flag 1
#define _default_g_sloppy_precision_flag 0
#define _default_operator_sloppy_precision_flag 0
#define _default_compression_type 18
#define _default_stout_rho 0.1
#define _default_rho 0.
#define _default_rho2 0.
#define _default_stout_no_iter 1
#define _default_use_stout_flag 0
#define _default_phmc_no_flavours 4
#define _default_compute_evs 0
#define _default_phmc_compute_evs 0
#define _default_phmc_pure_phmc 0
#define _default_stilde_max 3.
#define _default_stilde_min 0.01
#define _default_eig_polydeg 128
#define _default_eig_amin 0.001
#define _default_eig_amax 4
#define _default_eig_n_kr 96
#define _default_degree_of_p 48
#define _default_propagator_splitted 1
#define _default_source_splitted 1
#define _default_source_location 0
#define _default_no_eigenvalues 10
#define _default_eigenvalue_precision 1.e-5
#define _default_sub_evs_cg_flag 0
#define _default_phmc_heavy_timescale 0
#define _default_phmc_exact_poly 0
#define _default_even_odd_flag 1
#define _default_measurement_freq 10
#define _default_timescale 1
#define _default_reweighting_flag 0
#define _default_reweighting_samples 10
#define _default_source_type_flag 0
#define _default_no_samples 1
#define _default_online_measurement_flag 1
#define _default_online_measurement_freq 5
#define _default_compute_modenumber 0
#define _default_compute_topsus 0
#define _default_mstarsq 0.01
#define _default_no_sources_z2 1
/* sf default values */
#define _default_g_eta 0.
#define _default_g_Tbsf 3
#define _default_g_Ct 1.
#define _default_g_Cs 0.5
#define _default_g_C1 0.
#define _default_g_C1ss 0.
#define _default_g_C1tss 0.
#define _default_g_C1tts 0.
#define _default_bc_flag 0
/* default poly monomial values */
#define _default_MDPolyDegree 123
#define _default_MDPolyLmin 0.1
#define _default_MDPolyLmax 3.0
#define _default_MDPolyRootsFile "Square_root_BR_roots.dat"
#define _default_MDPolyLocNormConst -1.0
#define _default_MDPolyDetRatio 0
/* default OpenMP values */
#define _default_omp_num_threads 0
/* default mixed precision solver values */
#define _default_mixcg_innereps 5.0e-5
#define _default_mixcg_maxinnersolverit 5000
#define _default_use_preconditioning 0
#define _default_external_inverter 0
#define _default_external_eigsolver 0
#define _default_external_library 0
#define _default_subprocess_flag 0
#define _default_lowmem_flag 0
#define _default_g_barrier_monomials_convergence 1
/* default input values for QUDA interface */
/* These follow the recommendations of https://github.com/lattice/quda/wiki/Multigrid-Solver */
#define _default_quda_mg_setup_2kappamu 0.0
#define _default_quda_mg_n_level 2
#define _default_quda_mg_n_vec 24
#define _default_quda_mg_mu_factor 1.0
#define _default_quda_mg_setup_tol 1e-6
#define _default_quda_mg_setup_maxiter 1000
#define _default_quda_mg_coarse_solver_tol 0.25
#define _default_quda_mg_coarse_solver_maxiter 75
#define _default_quda_mg_smoother_tol 0.25
#define _default_quda_mg_nu_pre 0
#define _default_quda_mg_nu_post 4
#define _default_quda_mg_omega 0.85
#define _default_quda_mg_enable_size_three_blocks 0
// by default, we always reset the MG setup
// in the HMC, this needs to be set to a reasonable value
// depending on the length of the integration step
#define _default_quda_mg_reset_setup_mdu_threshold 2*DBL_EPSILON
#define _default_quda_mg_reuse_setup_mu_threshold 2*DBL_EPSILON
// in the HMC, we can evolve the MG setup by refreshing it
// at regular intervals as specified by this parameter
#define _default_quda_mg_refresh_setup_mdu_threshold 2*DBL_EPSILON
#define _default_quda_enable_device_memory_pool 0
#define _default_quda_enable_pinned_memory_pool 1
// gradient flow measurement step size and maximum flow time
#define _default_gf_eps 0.01
#define _default_gf_tmax 9.99
#define _default_g_mpi_thread_level TM_MPI_THREAD_SINGLE
#endif