From 32b0222cf23b31a067618f6ec7e95e338a2f4440 Mon Sep 17 00:00:00 2001 From: zhang <zhang@9a6e40ed-f3a0-4838-9b4a-bf418f78e88d> Date: Fri, 3 Dec 2010 17:14:44 +0000 Subject: [PATCH] 03/12/2010 1) Delete the value of bool flags. Now if user include the flag in the script, then the value of flag is 'true', if not in the script or been comment out, then the value is 'false' --- tracy/tracy/inc/read_script.h | 3 + tracy/tracy/src/read_script.cc | 310 +++++++-------------------------- 2 files changed, 68 insertions(+), 245 deletions(-) diff --git a/tracy/tracy/inc/read_script.h b/tracy/tracy/inc/read_script.h index 2b5eed8..d1991ed 100644 --- a/tracy/tracy/inc/read_script.h +++ b/tracy/tracy/inc/read_script.h @@ -1,5 +1,8 @@ /* global flag, used in script_read() and main() for read the input from script*/ +extern bool CavityOnFlag; +extern bool QuadFringeOnFlag; + extern bool RFvoltageFlag; extern double RFvolt; extern bool TuneTracFlag; diff --git a/tracy/tracy/src/read_script.cc b/tracy/tracy/src/read_script.cc index ec444de..bc1b5b0 100644 --- a/tracy/tracy/src/read_script.cc +++ b/tracy/tracy/src/read_script.cc @@ -28,6 +28,9 @@ ****************************************************************************/ /* global flag, used in script_read() and main() for read the input from script*/ +bool CavityOnFlag = false; +bool QuadFringeOnFlag = false; + bool RFvoltageFlag =false; double RFvolt =0.0; bool TuneTracFlag = false; @@ -78,6 +81,7 @@ char fic_hcorr[max_str],fic_vcorr[max_str], fic_skew[max_str]; bool FitTuneFlag = false; char qf[max_str],qd[max_str]; double targetnux = 0.0, targetnuz = 0.0; /* specific for soleil lattice in which the quadrupole is cut into 2 parts*/ bool FitTune4Flag = false; char qf1[max_str],qf2[max_str],qd1[max_str],qd2[max_str]; + bool FitChromFlag = false; char sxm1[max_str],sxm2[max_str]; double targetksix = 0.0, targetksiz = 0.0; bool ChamberFlag = false, ChamberNoU20Flag = false, ReadChamberFlag = false; bool GirderErrorFlag = false; @@ -168,100 +172,39 @@ void read_script(const char *param_file_name, bool rd_lat) /* read in bool flags */ else if (strcmp("ChamberFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) - ChamberFlag = true; - else if(strcmp(str, "false") == 0) - ChamberFlag = false; - else { - printf("set boolean flag true or false for ChamberFlag \n" ); - exit_(1); - } + ChamberFlag = true; } else if (strcmp("ChamberNoU20Flag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) ChamberNoU20Flag = true; - else if(strcmp(str, "false") == 0) - ChamberNoU20Flag = false; - else { - printf("set boolean flag true or false for ChamberNoU20Flag \n"); - exit_(1); - } } else if (strcmp("ReadChamberFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) ReadChamberFlag = true; - else if(strcmp(str, "false") == 0) - ReadChamberFlag = false; - else { - printf("set boolean flag true or false for ReadChamberFlag \n"); - exit_(1); - } } - else if (strcmp("globval.quad_fringe", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + else if (strcmp("QuadFringeOnFlag", name) == 0){ globval.quad_fringe = true; - else if(strcmp(str, "false") == 0) - globval.quad_fringe = false; - else { - printf("set boolean flag true or false for TuneTracFlag \n"); - exit_(1); - } } else if (strcmp("RFvoltageFlag", name) == 0){ - sscanf(line, "%*s %s %lf", str,&RFvolt); - if(strcmp(str, "true") == 0) RFvoltageFlag = true; - else if(strcmp(str, "false") == 0) - RFvoltageFlag = false; - else { - printf("set boolean flag true or false for RFvoltageFlag \n"); - exit_(1); - } } else if (strcmp("TuneTracFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) TuneTracFlag = true; - else if(strcmp(str, "false") == 0) - TuneTracFlag = false; - else { - printf("set boolean flag true or false for TuneTracFlag \n"); - exit_(1); - } } else if (strcmp("ChromTracFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) ChromTracFlag = true; - else if(strcmp(str, "false") == 0) - ChromTracFlag = false; - else { - printf("set boolean flag true or false for ChromTracFlag \n"); - exit_(1); - } } // FMA else if (strcmp("FmapFlag", name) == 0){ strcpy(dummy, ""); - sscanf(line, "%*s %s %ld %ld %ld %lf %lf %lf %s", str, + sscanf(line, "%*s %ld %ld %ld %lf %lf %lf %s", &_FmapFlag_nxpoint, &_FmapFlag_nypoint, &_FmapFlag_nturn, &_FmapFlag_xmax, &_FmapFlag_ymax, &_FmapFlag_delta, dummy); - if(strcmp(str, "true") == 0) + FmapFlag = true; - else if(strcmp(str, "false") == 0) - FmapFlag= false; - else { - printf("set boolean flag true or false for FMAFlag \n"); - exit_(1); - } + if(strcmp(dummy, "true") == 0) _FmapFlag_diffusion = true; else if(strcmp(dummy, "false") == 0) @@ -274,18 +217,13 @@ void read_script(const char *param_file_name, bool rd_lat) // FMA dp else if (strcmp("FmapdpFlag", name) == 0){ strcpy(dummy, ""); - sscanf(line, "%*s %s %ld %ld %ld %lf %lf %lf %s", str, + sscanf(line, "%*s %ld %ld %ld %lf %lf %lf %s", &_FmapdpFlag_nxpoint, &_FmapdpFlag_nepoint, &_FmapdpFlag_nturn, &_FmapdpFlag_xmax, &_FmapdpFlag_emax, &_FmapdpFlag_z, dummy); - if(strcmp(str, "true") == 0) + FmapdpFlag = true; - else if(strcmp(str, "false") == 0) - FmapdpFlag= false; - else { - printf("set boolean flag true or false for FMAdpFlag \n"); - exit_(1); - } + if(strcmp(dummy, "true") == 0) _FmapdpFlag_diffusion = true; else if(strcmp(dummy, "false") == 0) @@ -296,100 +234,56 @@ void read_script(const char *param_file_name, bool rd_lat) } } else if (strcmp("AmplitudeTuneShiftFlag", name) == 0){ - sscanf(line, "%*s %s %ld %ld %ld %lf %lf %lf", str, &_AmplitudeTuneShift_nxpoint, + sscanf(line, "%*s %ld %ld %ld %lf %lf %lf", &_AmplitudeTuneShift_nxpoint, &_AmplitudeTuneShift_nypoint, &_AmplitudeTuneShift_nturn, &_AmplitudeTuneShift_xmax, &_AmplitudeTuneShift_ymax, &_AmplitudeTuneShift_delta); - if(strcmp(str, "true") == 0) + AmplitudeTuneShiftFlag = true; - else if(strcmp(str, "false") == 0) - AmplitudeTuneShiftFlag = false; - else { - printf("set boolean flag true or false for AmplitudeTuneShiftFlag \n"); - exit_(1); - } + } else if (strcmp("EnergyTuneShiftFlag", name) == 0){ - sscanf(line, "%*s %s %ld %ld %lf", str, &_EnergyTuneShift_npoint, + sscanf(line, "%*s %ld %ld %lf", &_EnergyTuneShift_npoint, &_EnergyTuneShift_nturn, &_EnergyTuneShift_deltamax); - if(strcmp(str, "true") == 0) + EnergyTuneShiftFlag = true; - else if(strcmp(str, "false") == 0) - EnergyTuneShiftFlag = false; - else { - printf("set boolean flag true or false for EnergyTuneShiftFlag \n"); - exit_(1); - } + } else if (strcmp("ErrorCouplingFlag", name) == 0){ - sscanf(line, "%*s %s %ld %lf", str,&err_seed,&err_rms); - if(strcmp(str, "true") == 0) + sscanf(line, "%*s %ld %lf",&err_seed,&err_rms); + ErrorCouplingFlag = true; - else if(strcmp(str, "false") == 0) - ErrorCouplingFlag = false; - else { - printf("set boolean flag true or false for ErrorCouplingFlag \n"); - exit_(1); - } + } else if (strcmp("CouplingFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + CouplingFlag = true; - else if(strcmp(str, "false") == 0) - CouplingFlag = false; - else { - printf("set boolean flag true or false for CouplingFlag \n"); - exit_(1); - } + } else if (strcmp("MomentumAccFlag", name) == 0){ - sscanf(line, "%*s %s %s %ld %ld %lf %lf %ld %lf %lf %ld", str,TrackDim, + sscanf(line, "%*s %s %ld %ld %lf %lf %ld %lf %lf %ld",TrackDim, &_MomentumAccFlag_istart, &_MomentumAccFlag_istop, &_MomentumAccFlag_deltaminp, &_MomentumAccFlag_deltamaxp, &_MomentumAccFlag_nstepp, &_MomentumAccFlag_deltaminn, &_MomentumAccFlag_deltamaxn, &_MomentumAccFlag_nstepn ); - if(strcmp(str, "true") == 0) + MomentumAccFlag = true; - else if(strcmp(str, "false") == 0) - MomentumAccFlag = false; - else { - printf("set boolean flag true or false for MomentumAccFlag \n"); - exit_(1); - } + } else if (strcmp("ReadMultipoleFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + ReadMultipoleFlag = true; - else if(strcmp(str, "false") == 0) - ReadMultipoleFlag = false; - else { - printf("set boolean flag true or false for ReadMultipoleFlag \n"); - exit_(1); - } + } else if (strcmp("MultipoleFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + MultipoleFlag = true; - else if(strcmp(str, "false") == 0) - MultipoleFlag = false; - else { - printf("set boolean flag true or false for MultipoleFlag \n"); - exit_(1); - } + } else if (strcmp("ThinsextFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + ThinsextFlag = true; - else if(strcmp(str, "false") == 0) - ThinsextFlag = false; - else { - printf("set boolean flag true or false for ThinsextFlag \n"); - exit_(1); - } + } else if (strcmp("fic_hcorr", name) == 0){// read of h-correctors for multipoles sscanf(line, "%*s %s", str); @@ -404,116 +298,59 @@ void read_script(const char *param_file_name, bool rd_lat) sprintf(fic_skew,"%s%s", in_dir, str); } // generic one, fit for 1 family of quadrupoles else if (strcmp("FitTuneFlag", name) == 0){ - sscanf(line, "%*s %s %s %s %lf %lf", str,qf,qd,&targetnux,&targetnuz); - if(strcmp(str, "true") == 0) + sscanf(line, "%*s %s %s %lf %lf",qf,qd,&targetnux,&targetnuz); + FitTuneFlag = true; - else if(strcmp(str, "false") == 0) - FitTuneFlag = false; - else { - printf("set boolean flag true or false for FitTuneFlag \n"); - exit_(1); - } + }// fit for 2 families,specific for the soleil lattice in which the quadrupole is cut into 2 parts else if (strcmp("FitTune4Flag", name) == 0){ - sscanf(line, "%*s %s %s %s %s %s %lf %lf", str,qf1,qf2,qd1,qd2,&targetnux,&targetnuz); - if(strcmp(str, "true") == 0) + sscanf(line, "%*s %s %s %s %s %lf %lf",qf1,qf2,qd1,qd2,&targetnux,&targetnuz); + FitTune4Flag = true; - else if(strcmp(str, "false") == 0) - FitTune4Flag = false; - else { - printf("set boolean flag true or false for FitTune4Flag \n"); - exit_(1); - } + } else if (strcmp("FitChromFlag", name) == 0){ - sscanf(line, "%*s %s %s %s %lf %lf", str,sxm1,sxm2,&targetksix,&targetksiz); - if(strcmp(str, "true") == 0) + sscanf(line, "%*s %s %s %lf %lf",sxm1,sxm2,&targetksix,&targetksiz); + FitChromFlag = true; - else if(strcmp(str, "false") == 0) - FitChromFlag = false; - else { - printf("set boolean flag true or false for FitChromFlag \n"); - exit_(1); - } + } else if (strcmp("GirderErrorFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + GirderErrorFlag = true; - else if(strcmp(str, "false") == 0) - GirderErrorFlag = false; - else { - printf("set boolean flag true or false for GirderErrorFlag \n"); - exit_(1); - } + } else if (strcmp("SigmaFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + SigmaFlag = true; - else if(strcmp(str, "false") == 0) - SigmaFlag = false; - else { - printf("set boolean flag true or false for SigmaFlag \n"); - exit_(1); - } + } else if (strcmp("PX2Flag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + PX2Flag = true; - else if(strcmp(str, "false") == 0) - PX2Flag = false; - else { - printf("set boolean flag true or false for PX2Flag \n"); - exit_(1); - } + } else if (strcmp("InducedAmplitudeFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + InducedAmplitudeFlag = true; - else if(strcmp(str, "false") == 0) - InducedAmplitudeFlag = false; - else { - printf("set boolean flag true or false for InducedAmplitudeFlag \n" ); - exit_(1); - } + } else if (strcmp("CodeComparaisonFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + CodeComparaisonFlag = true; - else if(strcmp(str, "false") == 0) - CodeComparaisonFlag = false; - else { - printf("set boolean flag true or false for CodeComparaisonFlag \n" ); - exit_(1); - } + } else if (strcmp("EtaFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + EtaFlag = true; - else if(strcmp(str, "false") == 0) - EtaFlag = false; - else { - printf("set boolean flag true or false for EtaFlag \n" ); - exit_(1); - } + } // include RF cavity and set 4/6 D tracking // true=6D, false=4D - else if (strcmp("globval.Cavity_on", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + else if (strcmp("CavityOnFlag", name) == 0){ + globval.Cavity_on = true; - else if(strcmp(str, "false") == 0) - globval.Cavity_on = false; - else { - printf("set boolean flag true or false for globval.Cavity_on \n" ); - exit_(1); - } + } else if (strcmp("PhaseSpaceFlag", name) == 0) { sscanf(line, "%*s %s %lf %lf %lf %lf %lf %lf %ld %s", _Phase_Dim, &_Phase_X, &_Phase_Px, &_Phase_Y, &_Phase_Py, &_Phase_delta, @@ -527,39 +364,22 @@ void read_script(const char *param_file_name, bool rd_lat) exit_(1); } PhaseSpaceFlag = true; - } else if (strcmp("TouschekFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + } + //calculate Touschek lifetime + else if (strcmp("TouschekFlag", name) == 0){ + TouschekFlag = true; - else if(strcmp(str, "false") == 0) - TouschekFlag = false; - else { - printf("set boolean flag true or false for TouschekFlag \n" ); - exit_(1); - } - + } else if (strcmp("IBSFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + IBSFlag = true; - else if(strcmp(str, "false") == 0) - IBSFlag = false; - else { - printf("set boolean flag true or false for IBSFlag \n" ); - exit_(1); - } + } else if (strcmp("TousTrackFlag", name) == 0){ - sscanf(line, "%*s %s", str); - if(strcmp(str, "true") == 0) + TousTrackFlag = true; - else if(strcmp(str, "false") == 0) - TousTrackFlag = false; - else { - printf("set boolean flag true or false for TousTrackFlag \n" ); - exit_(1); - } + } else { -- GitLab