Tweak `LiebLin_Catalogue_Fixed_c_k_Nscaling`
This commit is contained in:
		
							parent
							
								
									20c0035208
								
							
						
					
					
						commit
						d419d933d1
					
				|  | @ -22,7 +22,7 @@ using namespace ABACUS; | ||||||
| int main(int argc, char* argv[]) | int main(int argc, char* argv[]) | ||||||
| { | { | ||||||
| 
 | 
 | ||||||
|   if (argc != 7) { // provide some info
 |   if (argc != 8) { // provide some info
 | ||||||
| 
 | 
 | ||||||
|     cout << endl << "Welcome to ABACUS\t(copyright J.-S. Caux)." << endl; |     cout << endl << "Welcome to ABACUS\t(copyright J.-S. Caux)." << endl; | ||||||
|     cout << endl << "Usage of LiebLin_Catalogue_Fixed_c_k_Nscaling executable: " << endl; |     cout << endl << "Usage of LiebLin_Catalogue_Fixed_c_k_Nscaling executable: " << endl; | ||||||
|  | @ -30,10 +30,11 @@ int main(int argc, char* argv[]) | ||||||
|     cout << "char whichDSF \t\t Which structure factor should be calculated ?  Options are:  " |     cout << "char whichDSF \t\t Which structure factor should be calculated ?  Options are:  " | ||||||
|       "d for rho rho, g for psi psi{dagger}, o for psi{dagger} psi" << endl; |       "d for rho rho, g for psi psi{dagger}, o for psi{dagger} psi" << endl; | ||||||
|     cout << "DP c_int \t\t Value of the interaction parameter:  use positive real values only" << endl; |     cout << "DP c_int \t\t Value of the interaction parameter:  use positive real values only" << endl; | ||||||
|     cout << "int kfact \t\t momentum factor: momemntum will be set to kfact * kF/4" << endl; |     cout << "int kfact \t\t momentum factor: momemntum will be set to kfact * kF/16" << endl; | ||||||
|     cout << "DP kBT \t\t Temperature (positive only of course)" << endl; |     cout << "DP kBT \t\t Temperature (positive only of course)" << endl; | ||||||
|     cout << "DP target_sumrule \t sumrule saturation you're satisfied with" << endl; |     cout << "DP target_sumrule \t sumrule saturation you're satisfied with" << endl; | ||||||
|     cout << "int Max_Secs \t\t Allowed computational time" << endl; |     cout << "int Hrs \t\t Allowed computational time (hours)" << endl; | ||||||
|  |     cout << "int Mns \t\t Allowed computational time (minutes)" << endl; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   else { // correct nr of arguments
 |   else { // correct nr of arguments
 | ||||||
|  | @ -43,7 +44,7 @@ int main(int argc, char* argv[]) | ||||||
|     int kfact = atoi(argv[ia++]); |     int kfact = atoi(argv[ia++]); | ||||||
|     DP kBT = atof(argv[ia++]); |     DP kBT = atof(argv[ia++]); | ||||||
|     DP target_sumrule = atof(argv[ia++]); |     DP target_sumrule = atof(argv[ia++]); | ||||||
|     int Max_Secs = atoi(argv[ia++]); |     int Max_Secs = 3600*atoi(argv[ia++]) + 60*atoi(argv[ia++]); | ||||||
| 
 | 
 | ||||||
|     double StartTime = omp_get_wtime(); |     double StartTime = omp_get_wtime(); | ||||||
| 
 | 
 | ||||||
|  | @ -53,17 +54,20 @@ int main(int argc, char* argv[]) | ||||||
| 
 | 
 | ||||||
|     int iN = 0; |     int iN = 0; | ||||||
| 
 | 
 | ||||||
|     int nN = 12; |     int nN = 16; | ||||||
|     Vect<int> Nv(nN); |     Vect<int> Nv(nN); | ||||||
|     Nv[0] = 160; Nv[1] = 192; Nv[2] = 224; Nv[3] = 256; |     // Multiples of 32 up to 256
 | ||||||
|     Nv[4] = 320; Nv[5] = 384; Nv[6] = 448; Nv[7] = 512; |     for (int i = 1; i <= 8; ++i) Nv[i-1] = 32*i; | ||||||
|     Nv[8] = 640; Nv[9] = 768; Nv[10] = 896; Nv[11] = 1024; |     // Then steps of 64 up to 512
 | ||||||
|  |     for (int i = 1; i <= 4; ++i) Nv[7+i] = 256 + 64*i; | ||||||
|  |     // Then steps of 128 up to 1024
 | ||||||
|  |     for (int i = 1; i <= 4; ++i) Nv[11+i] = 512 + 128*i; | ||||||
| 
 | 
 | ||||||
|     for (int iN = 0; iN < nN; ++iN) { |     for (int iN = 0; iN < nN; ++iN) { | ||||||
| 
 | 
 | ||||||
|       int N = Nv[iN]; |       int N = Nv[iN]; | ||||||
|       DP L = N; |       DP L = N; | ||||||
|       int iKmin = (kfact * N)/8; |       int iKmin = (kfact * N)/32; | ||||||
|       int iKmax = iKmin; |       int iKmax = iKmin; | ||||||
|       DP srsat = 0.0; |       DP srsat = 0.0; | ||||||
|       bool refine = false; |       bool refine = false; | ||||||
|  |  | ||||||
|  | @ -650,12 +650,12 @@ namespace ABACUS { | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// Uncomment line below if .stat file is desired:
 | 		// Uncomment line below if .stat file is desired:
 | ||||||
| 		STAT_outfile << setw(20) << label_here << "\t" << setw(5) << type_required | 		// STAT_outfile << setw(20) << label_here << "\t" << setw(5) << type_required
 | ||||||
| 			     << "\t" << setw(16) << std::scientific | 		// 	     << "\t" << setw(16) << std::scientific
 | ||||||
| 			     << exp(-paused_thread_data.logscale * il_to_do) | 		// 	     << exp(-paused_thread_data.logscale * il_to_do)
 | ||||||
| 			     << "\t" << setw(20) << ScanState.label << "\t" << setw(16) << data_value | 		// 	     << "\t" << setw(20) << ScanState.label << "\t" << setw(16) << data_value
 | ||||||
| 			     << "\t" << setw(16) << std::fixed << setprecision(8) | 		// 	     << "\t" << setw(16) << std::fixed << setprecision(8)
 | ||||||
| 			     << data_value/exp(-paused_thread_data.logscale * il_to_do) << endl; | 		// 	     << data_value/exp(-paused_thread_data.logscale * il_to_do) << endl;
 | ||||||
| 
 | 
 | ||||||
| 	      } // if (ScanState.conv)
 | 	      } // if (ScanState.conv)
 | ||||||
| 	      else { | 	      else { | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue