diff --git a/README b/README index 9d37bbee031f88bf0f39a6708acb16d40d5a09f0..a274b22fbeaced392405c6e09e7403b2c5ac5921 100644 --- a/README +++ b/README @@ -2,45 +2,35 @@ CWSeaOptiFol - Continuous Waves Search Optimization and Follow-up Synopsis: - A collection of programs for optimization and follow-up of - semicoherent searches for continuous gravitational waves. + A collection of programs for follow-up of semicoherent searches for + continuous gravitational waves. The search optimization part has been + moved to attic in early 2019. CWSeaOptiFol has been forked from a branch of LALAPPS and - contain pieces of code developed inside LALAPPS. Thus you - may find code and documentaion written by various LIGO - collaborators. - + contain pieces of code developed inside LALAPPS. Thus you + may find code and documentaion written by various LIGO + collaborators. Notice: - We request that any academic report, publication, or other - academic disclosure of results derived from the use of this - software acknowledge the use of the software by an appropriate - acknowledgment or citation. - + We request that any academic report, publication, or other + academic disclosure of results derived from the use of this + software acknowledge the use of the software by an appropriate + acknowledgment or citation. Installation: - CWSeaOptiFol requires various pieces of software which can be installed - by following these directions: - http://www.lsc-group.phys.uwm.edu/daswg/docs/howto/lscsoft-install.html - - Binary versions of these software packages, can be obtained from: - http://www.lsc-group.phys.uwm.edu/daswg/download/repositories.html - - Follow these directions to build LAL from source: - http://www.lsc-group.phys.uwm.edu/daswg/docs/howto/lal-install.html - - NOMAD is available from - https://www.gerad.ca/nomad/ - or for convenience (using autotools) - https://gitlab.aei.uni-hannover.de/ms-public/nomad - - -Other resources: + CWSeaOptiFol requires among others + + LALSuite - https://git.ligo.org/lscsoft/lalsuite + NOMAD - https://www.gerad.ca/nomad/ - Binary releases of LALApps for various platforms: - http://www.lsc-group.phys.uwm.edu/daswg/download/repositories.html + For convenience you can use an autotooled version of NOMAD found under + https://github.com/cvscpp/sgtelib + https://github.com/cvscpp/nomad - Please see the LALApps webpage for more information: - http://www.lsc-group.phys.uwm.edu/daswg/projects/lalapps.html + Typical installation steps + + 1. Install and source LALSuite (minimal required lal and lalpulsar) + 2. Install sgtelib and nomad (preferably the autotooled version) + 3. Configure and install CWSeaOptiFol diff --git a/configure.ac b/configure.ac index 70a329d886e79ff648b82344cf32aed084c787c6..b1fc7b35a72d0bffa90da68a4232f4d3e92ced3b 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.63]) -AC_INIT([cwseaoptifol],[6.17.0.1],[miroslav.shaltev@aei.mpg.de]) +AC_INIT([cwseaoptifol],[6.22.0.1],[miroslav.shaltev@shaltev.de]) AC_CONFIG_HEADERS([src/config.h]) AC_CONFIG_SRCDIR([src/lalapps/lalapps.c]) AC_CONFIG_AUX_DIR([misc]) @@ -14,8 +14,7 @@ AC_CONFIG_FILES([\ src/GoodiesAndClones/Makefile \ src/FollowUp/Gsl/Makefile \ src/FollowUp/Nomad/Makefile \ - src/FollowUp/AfterMath/Makefile \ - src/SearchOptimization/Makefile + src/FollowUp/AfterMath/Makefile ]) AM_INIT_AUTOMAKE([1.11 foreign color-tests parallel-tests]) AH_TOP([ @@ -26,8 +25,8 @@ AH_BOTTOM([ ]) # version requirements -MIN_LAL_VERSION="6.17.0" -MIN_LALPULSAR_VERSION="1.15.0" +MIN_LAL_VERSION="6.19.0" +MIN_LALPULSAR_VERSION="1.17.0" AC_SUBST([MIN_LAL_VERSION]) AC_SUBST([MIN_LALPULSAR_VERSION]) diff --git a/cwseaoptifol.spec b/cwseaoptifol.spec index b0f1ab5579d73863cb42a9283bb33ff956e1982f..e66f4f869ca66e25c568f955e8d470b21ed1ede4 100644 --- a/cwseaoptifol.spec +++ b/cwseaoptifol.spec @@ -5,7 +5,7 @@ %define _pkgpyexecdir %{_libdir}/python2.6/site-packages/cwseaoptifol Name: cwseaoptifol -Version: 6.17.0.1 +Version: 6.22.0.1 Release: 1 Summary: LSC Algorithm Library Applications License: GPL diff --git a/src/FollowUp/AfterMath/AfterMath.cpp b/src/FollowUp/AfterMath/AfterMath.cpp index 86f993f6493375c06c43a3959d605490eda87eef..ae66f8c68c6360795eed576fc57efb53e01e2794 100644 --- a/src/FollowUp/AfterMath/AfterMath.cpp +++ b/src/FollowUp/AfterMath/AfterMath.cpp @@ -106,7 +106,6 @@ INT4 AFTERMath::XLALInitUserVars ( int argc, char *argv[] ) } /* register user input variables */ - XLALRegisterUvarMember( version,BOOLEAN, 'V', SPECIAL, "Output version information."); XLALRegisterUvarMember( fnamein, STRING, 0, OPTIONAL, "Input filename."); XLALRegisterUvarMember( fnameout, STRING, 0, OPTIONAL, "Output filename."); XLALRegisterUvarMember( ephemEarth, STRING, 0, OPTIONAL, "Location of Earth ephemeris file."); @@ -119,7 +118,7 @@ INT4 AFTERMath::XLALInitUserVars ( int argc, char *argv[] ) XLALRegisterUvarMember( distanceLimit, REAL8, 0, OPTIONAL, "Distance limit."); /* read cmdline & cfgfile */ BOOLEAN should_exit = 0; - XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv ) == XLAL_SUCCESS, XLAL_EFUNC ); + XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv, lalAppsVCSInfoList ) == XLAL_SUCCESS, XLAL_EFUNC ); if ( should_exit ) { exit (1); } diff --git a/src/FollowUp/Gsl/FCGridSearch.cpp b/src/FollowUp/Gsl/FCGridSearch.cpp index 80eb5426025a907bdb5fbc1ed7252d6546b53574..01ba5afcbc9101cd2be7d3901958a309a9ce4e66 100644 --- a/src/FollowUp/Gsl/FCGridSearch.cpp +++ b/src/FollowUp/Gsl/FCGridSearch.cpp @@ -1991,7 +1991,6 @@ INT4 FCGridSearch::read_CL(int argc, char *argv[]) { strcpy(uvar_ephemS, SUNEPHEMERIS); /* register user input variables */ - XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_version, "version", BOOLEAN, 'V', SPECIAL, "Output version information") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_SNRthType, "SNRthType", INT4, 0, OPTIONAL, "Type of SNRth computation: 0 - constant, 1 - numerical, 2 - Gaussian, 3 - WSG Eq. 38 PRD85 084010, 4 - KW Eq. 3.31 PRD85 042003") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_ConstSNRth, "ConstSNRth", REAL8, 0, OPTIONAL, "SNRth value used with SNRthType = 0") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_pFA, "pFA", REAL8, 0, OPTIONAL, "False-alarm probability") == XLAL_SUCCESS, XLAL_EFUNC); @@ -2059,10 +2058,10 @@ INT4 FCGridSearch::read_CL(int argc, char *argv[]) { /* read cmdline & cfgfile */ BOOLEAN should_exit = 0; - XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv ) == XLAL_SUCCESS, XLAL_EFUNC ); + XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv, lalAppsVCSInfoList ) == XLAL_SUCCESS, XLAL_EFUNC ); if ( should_exit ) { exit (1); - } + } /* set log level */ // LogSetLevel((LogLevel_t)uvar_loglevel); diff --git a/src/FollowUp/Gsl/FStatGsl.cpp b/src/FollowUp/Gsl/FStatGsl.cpp index c6709152915dac6fd995b2bfe1e4197ffad611d7..8b52f15ac5ca7f23d331ad38fbd26fbd6ab161c6 100644 --- a/src/FollowUp/Gsl/FStatGsl.cpp +++ b/src/FollowUp/Gsl/FStatGsl.cpp @@ -286,7 +286,6 @@ REAL8 fc_ds_eval_x(const gsl_vector *v, void *param) { MFCSearch->trials_add(); p.F = fx; MFCSearch->wkvector.push_back(p); - } @@ -960,7 +959,7 @@ INT4 FCSearch::read_CL(int argc, char *argv[]) { XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_tStack, "tStack",REAL8, 0, OPTIONAL, "Duration of segments (sec)") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_segmentList, "segmentList",STRING, 0, OPTIONAL, "File containing a segment list used to compute Fisher ellipsoid: lines of form <startGPS endGPS duration[h] NumSFTs>") == XLAL_SUCCESS, XLAL_EFUNC); - XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_TargetedSearch, "TargetedSearch",BOOLEAN, 0, SPECIAL, "Do targeted search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_TargetedSearch, "TargetedSearch",BOOLEAN, 0, OPTIONAL, "Do targeted search") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_StartPointFreq, "StartPointFreq",REAL8, 0, OPTIONAL, "Freq") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_StartPointAlpha, "StartPointAlpha",REAL8, 0, OPTIONAL, "RA") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_StartPointDelta, "StartPointDelta",REAL8, 0, OPTIONAL, "Dec") == XLAL_SUCCESS, XLAL_EFUNC); @@ -999,7 +998,6 @@ INT4 FCSearch::read_CL(int argc, char *argv[]) { XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_RandomSearchRadius, "RandomSearchRadius", INT4, 0, OPTIONAL, "Radius in percent of the search band per direction to randomize around the starting point") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_ResamplingSearch, "ResamplingSearch", BOOLEAN, 0, OPTIONAL, "Use resampling for searc, i.e. search only in alpha and delta") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_FixedSpindownSearch, "FixedSpindownSearch",BOOLEAN, 0, OPTIONAL, "Constant spindown search") == XLAL_SUCCESS, XLAL_EFUNC); - XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_version, "version",BOOLEAN, 'V', SPECIAL, "Output version information") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_BreakASAP, "BreakASAP",BOOLEAN, 0, OPTIONAL, "Break the search if we are within the expectation") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_NoiseLimit, "NoiseLimit",REAL8, 0, OPTIONAL, "Minimal acceptable fully-coherent 2F") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_AcceptDev, "AcceptDev",REAL8, 0, OPTIONAL, "Number of standard deviations from the expectation to break the search if BreakASAP is used") == XLAL_SUCCESS, XLAL_EFUNC); @@ -1026,11 +1024,11 @@ INT4 FCSearch::read_CL(int argc, char *argv[]) { XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_Signalf3dot, "Signalf3dot",REAL8, 0, OPTIONAL, "Signal f3dot") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_ComputeStartingPointStatistics, "ComputeStartingPointStatistics",BOOLEAN, 0, OPTIONAL, "Compute the semi-coherent and fully-coherent 2F value of the starting point") == XLAL_SUCCESS, XLAL_EFUNC); XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_ComputeDTS, "ComputeDTS",BOOLEAN, 0, OPTIONAL, "Compute the distance to the signal in FStatSearchType=2 mode, using the Fisher matrix") == XLAL_SUCCESS, XLAL_EFUNC); - XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_FstatMethod, "FstatMethod",STRING, 0, OPTIONAL, XLALFstatMethodHelpString()) == XLAL_SUCCESS, XLAL_EFUNC); - + XLAL_CHECK_MAIN( XLALRegisterNamedUvar( &uvar_FstatMethod, "FstatMethod", INT4, 0, OPTIONAL, "F-statistic method to use" ) == XLAL_SUCCESS, XLAL_EFUNC); + /* read cmdline & cfgfile */ BOOLEAN should_exit = 0; - XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv ) == XLAL_SUCCESS, XLAL_EFUNC ); + XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv, lalAppsVCSInfoList ) == XLAL_SUCCESS, XLAL_EFUNC ); if ( should_exit ) { exit (1); } @@ -1146,10 +1144,7 @@ INT4 FCSearch::read_CL(int argc, char *argv[]) { usefulParams.refTime = -1; } - if ( XLALParseFstatMethodString ( &usefulParams.Fmethod, uvar_FstatMethod ) != XLAL_SUCCESS ) { - XLALPrintError ("XLALParseFstatMethodString() failed.\n"); - return( FSTATGSL_EBAD ); - } + usefulParams.Fmethod = uvar_FstatMethod; StartStepAlpha(uvar_StartStepAlpha); StartStepDelta(uvar_StartStepDelta); @@ -1252,7 +1247,6 @@ INT4 FCSearch::read_CL(int argc, char *argv[]) { } } LogPrintf(LOG_NORMAL,"Search %d dimensions\n",ndim); - } @@ -1396,7 +1390,7 @@ FCSearch::FCSearch(int argc, char *argv[]) { uvar_Cost = 1; uvar_ConTol = 1e-6; - uvar_FstatMethod = XLALStringDuplicate("DemodBest"); + uvar_FstatMethod = FMETHOD_DEMOD_BEST; // for (INT4 i = 0; i < 6; i++) extends[i] = 0; diff --git a/src/FollowUp/Gsl/FStatGsl.h b/src/FollowUp/Gsl/FStatGsl.h index 84ea221ee953eae06643486a32afcedddee98246..5c83eb718ba75e840b7436422830a53d60cbbe90 100644 --- a/src/FollowUp/Gsl/FStatGsl.h +++ b/src/FollowUp/Gsl/FStatGsl.h @@ -212,7 +212,7 @@ extern "C" { INT4 uvar_Cost; REAL8 uvar_ConTol; - CHAR *uvar_FstatMethod; + int uvar_FstatMethod; }; diff --git a/src/FollowUp/Gsl/libFStatGsl.cpp b/src/FollowUp/Gsl/libFStatGsl.cpp index ffaf427858554b44ea711031fa963045fc1fc39b..5abc4a9777251ea5753c34e63acffc3cc43e2328 100644 --- a/src/FollowUp/Gsl/libFStatGsl.cpp +++ b/src/FollowUp/Gsl/libFStatGsl.cpp @@ -745,7 +745,7 @@ void FStatGsl::SetUpSFTs( LALStatus *status, /**< pointer to LALStatus structu optionalArgs.SSBprec = in->SSBprec; optionalArgs.Dterms = in->Dterms; optionalArgs.runningMedianWindow = in->blocksRngMed; - optionalArgs.FstatMethod = in->Fmethod; + optionalArgs.FstatMethod = (FstatMethodType)in->Fmethod; for (k = 0; k < in->nStacks; k++) { diff --git a/src/FollowUp/Gsl/libFStatGsl.h b/src/FollowUp/Gsl/libFStatGsl.h index 4f0cace6a7f0923a5ceaa276fd3733d1c68d343b..266853a3ef5135a343083e1f5ad0a8cd3720f2e4 100644 --- a/src/FollowUp/Gsl/libFStatGsl.h +++ b/src/FollowUp/Gsl/libFStatGsl.h @@ -64,7 +64,7 @@ #include <lal/LALInitBarycenter.h> #include <lal/Velocity.h> #include <lal/ExtrapolatePulsarSpins.h> -#include <lal/EstimateAmplitudeParams.h> +#include <lal/FstatisticTools.h> #include <lal/Date.h> #include <lal/LALHough.h> #include <lal/NormalizeSFTRngMed.h> @@ -241,7 +241,7 @@ extern "C" { UINT4 extraBinsFstat; /**< Extra bins required for Fstat calculation */ SSBprecision SSBprec; /**< SSB transform precision */ BOOLEAN useResamp; /**< user-input switch whether to use resampling */ - FstatMethodType Fmethod; //!< which Fstat-method/algorithm to use + int Fmethod; //!< which Fstat-method/algorithm to use BOOLEAN useWholeSFTs; /**< special switch: load all given frequency bins from SFTs */ REAL8 mismatch1; /**< 'mismatch1' user-input needed here internally ... */ UINT4 nSFTs; /**< total number of SFTs */ @@ -454,10 +454,10 @@ extern "C" { return var_Type; }; - REAL8 comp_exp2F() { + void comp_exp2F() { var_exp2F = ( 4. + RNseg * ( var_avg2F - 4. ) ); }; - REAL8 comp_sigma2F() { + void comp_sigma2F() { var_sigma2F = sqrt( 2. * ( 4. + 2. * (RNseg * ( var_avg2F - 4.) ) ) ); }; diff --git a/src/FollowUp/Nomad/FStatNomad.cpp b/src/FollowUp/Nomad/FStatNomad.cpp index 3816e0183288c62bf4244f69ead77f5f380c4c33..e27029ebb460569d5a9ae98b3aa071f4152d9f75 100644 --- a/src/FollowUp/Nomad/FStatNomad.cpp +++ b/src/FollowUp/Nomad/FStatNomad.cpp @@ -1357,15 +1357,13 @@ INT4 FCSearch::XLALInitUserVars ( int argc, char *argv[] ) uvar->HybridSearch = FALSE; uvar->HybridSearchLatticeAtOnce = FALSE; uvar->HybridSearchMismatch = 0.1; - uvar->HybridSearchLattice = (char*)LALCalloc( 16, sizeof(CHAR) ); - strcpy(uvar->HybridSearchLattice, "an-star"); + uvar->HybridSearchLattice = TILING_LATTICE_ANSTAR; uvar->HybridSearchPoints = 16; uvar->FinalHybridSearch = FALSE; uvar->FinalHybridSearchLatticeAtOnce = FALSE; uvar->FinalHybridSearchMismatch = 0.8; - uvar->FinalHybridSearchLattice = (char*)LALCalloc( 16, sizeof(CHAR) ); - strcpy(uvar->FinalHybridSearchLattice, "an-star"); + uvar->FinalHybridSearchLattice = TILING_LATTICE_ANSTAR; uvar->FinalHybridSearchPoints = 16; @@ -1373,7 +1371,7 @@ INT4 FCSearch::XLALInitUserVars ( int argc, char *argv[] ) SignalIsKnown = FALSE; - uvar->FstatMethod = XLALStringDuplicate("DemodBest"); + uvar->FstatMethod = FMETHOD_DEMOD_BEST; if ( (uvar->Alpha = XLALCreateStringVector("0,0,0,0,0,0,0",NULL)) == NULL) { LogPrintf (LOG_CRITICAL, "Call to XLALCreateStringVector() failed with xlalErrno = %d\n", xlalErrno ); @@ -1428,119 +1426,118 @@ INT4 FCSearch::XLALInitUserVars ( int argc, char *argv[] ) } /* register user input variables */ - XLALRegisterUvarMember( Signal, STRINGVector, 0, OPTIONAL, "Signal parameters [alpha,delta,freq,f1dot,f2dot,f3dot,cosi,psi,phi0,h0,asini,argp,ecc,tpssb,period]"); - XLALRegisterUvarMember( Alpha, STRINGVector, 0, OPTIONAL, "Direction Alpha [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( Delta, STRINGVector, 0, OPTIONAL, "Direction Delta [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( Freq, STRINGVector, 0, OPTIONAL, "Direction Freq [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( f1dot, STRINGVector, 0, OPTIONAL, "Direction f1dot [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( f2dot, STRINGVector, 0, OPTIONAL, "Direction f2dot [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( f3dot, STRINGVector, 0, OPTIONAL, "Direction f3dot [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( TpSSB, STRINGVector, 0, OPTIONAL, "Direction TpSSB [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( Argp, STRINGVector, 0, OPTIONAL, "Direction Argp [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( asini, STRINGVector, 0, OPTIONAL, "Direction asini [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( ecc, STRINGVector, 0, OPTIONAL, "Direction ecc [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( Period, STRINGVector, 0, OPTIONAL, "Direction Period [startpoint,min,max,startstep,scale,fixed,desc]"); - XLALRegisterUvarMember( DataFiles, STRING, 0, REQUIRED, "1st SFT file pattern"); - XLALRegisterUvarMember( fnameout, STRING, 0, OPTIONAL, "Output filename"); - XLALRegisterUvarMember( outputLoudest, BOOLEAN, 0, OPTIONAL, "Output loudest F-statistic candidate + estimated MLE amplitudes"); - XLALRegisterUvarMember( outputTiming, BOOLEAN , 0, OPTIONAL, "Output timing information"); - XLALRegisterUvarMember( refTime, REAL8, 0, OPTIONAL, "Ref. time for pulsar pars [Default: mid-time]"); - XLALRegisterUvarMember( ephemEarth, STRING, 0, OPTIONAL, "Location of Earth ephemeris file"); - XLALRegisterUvarMember( ephemSun, STRING, 0, OPTIONAL, "Location of Sun ephemeris file"); - XLALRegisterUvarMember( minStartTime, REAL8, 0, OPTIONAL, "1st stage min start time of observation"); - XLALRegisterUvarMember( maxEndTime, REAL8, 0, OPTIONAL, "1st stage max end time of observation"); - - XLALRegisterUvarMember( tStack, REAL8, 0, OPTIONAL, "Duration of segments (sec)"); - XLALRegisterUvarMember( segmentList, STRING, 0, OPTIONAL, "File containing a segment list used to compute Fisher ellipsoid: lines of form <startGPS endGPS duration[h] NumSFTs>"); - XLALRegisterUvarMember( TargetedSearch, BOOLEAN, 0, SPECIAL, "Do targeted search"); - - XLALRegisterUvarMember( avg2F, REAL8, 0, OPTIONAL, "average 2F of candidate"); - XLALRegisterUvarMember( Type, INT4, 0, OPTIONAL, "0=UNDEFINED_DIRECTION, 1=MODEL_SEARCH_DIR, 2=NO_DIRECTION, 3=ORTHO_1, 4=ORTHO_2, 5=ORTHO_NP1_QUAD, 6=ORTHO_NP1_NEG, 7=ORTHO_NP1_UNI, 8=DYN_ADDED, 9=ORTHO_2N, 10=LT_1, 11=LT_2, 12=LT_2N, 13=LT_NP1, 14=GPS_BINARY, 15=GPS_2N_STATIC, 16=GPS_2N_RAND, 17=GPS_NP1_STATIC_UNIFORM, 18=GPS_NP1_STATIC, 19=GPS_NP1_RAND_UNIFORM, 20=GPS_NP1_RAND, 21=PROSPECT_DIR"); - XLALRegisterUvarMember( FinalType, INT4, 0, OPTIONAL, "Type for the coherent stage in a chain search."); - XLALRegisterUvarMember( LTMADS, INT4, 0, OPTIONAL, "Regardless of Type also do Type=LT_NP1 search AFTER the regular search"); - XLALRegisterUvarMember( FinalLTMADS, INT4, 0, OPTIONAL, "LTMADS for the coherent stage"); - XLALRegisterUvarMember( DisplayDegree, INT4, 0, DEVELOPER, "0=empty,[1]=normal,[2]=verbose"); - XLALRegisterUvarMember( Epsilon, REAL8, 0, DEVELOPER, "Precision on reals"); - XLALRegisterUvarMember( MinMeshSize, REAL8, 0, DEVELOPER, "Miminmal mesh size"); - XLALRegisterUvarMember( MinPollSize, REAL8, 0, DEVELOPER, "Miminmal pol size"); - XLALRegisterUvarMember( MaxIterations, INT4, 0, DEVELOPER, "Maximal iterations"); - XLALRegisterUvarMember( ModelSearch, INT4, 0, OPTIONAL, "Model search"); - XLALRegisterUvarMember( ModelEvalSort, INT4, 0, OPTIONAL, "Model evaluation sort"); - XLALRegisterUvarMember( VnsSearch, REAL8, 0, OPTIONAL, "VNS search"); - XLALRegisterUvarMember( MaxBBEval, INT4, 0, OPTIONAL, "Black box evaluation"); - XLALRegisterUvarMember( MeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent"); - XLALRegisterUvarMember( LoopMeshCoarseningExponent, BOOLEAN, 0, OPTIONAL, "Loop over mesh coarsening exponents"); - XLALRegisterUvarMember( MinMeshCoarseningExponent, INT4, 0, OPTIONAL, "Minimal mesh coarsening exponent"); - XLALRegisterUvarMember( MaxMeshCoarseningExponent, INT4, 0, OPTIONAL, "Maxmimal mesh coarsening exponent"); - XLALRegisterUvarMember( StepMeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent step size"); - XLALRegisterUvarMember( FinalMinMeshCoarseningExponent, INT4, 0, OPTIONAL, "Minimal mesh coarsening exponent of the final fully-coherent stage"); - XLALRegisterUvarMember( FinalMaxMeshCoarseningExponent, INT4, 0, OPTIONAL, "Maxmimal mesh coarsening exponent of the final fully-coherent stage"); - XLALRegisterUvarMember( FinalStepMeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent step size of the final fully-coherent stage"); - XLALRegisterUvarMember( MeshRefiningExponent, INT4, 0, OPTIONAL, "Mesh refining exponent"); - XLALRegisterUvarMember( MeshType, INT4, 0, OPTIONAL, "Mesh type: 0 = XMesh, 1 = SMesh"); - XLALRegisterUvarMember( MeshUpdateBasis, REAL8, 0, OPTIONAL, "Mesh update basis, user with SMesh"); - XLALRegisterUvarMember( FinalMeshUpdateBasis, REAL8, 0, OPTIONAL, "Mesh update basis of the final fully-coherent stage, used with SMesh"); - XLALRegisterUvarMember( PollUpdateBasis, REAL8, 0, OPTIONAL, "Poll update basis, used with XMesh"); - XLALRegisterUvarMember( FinalPollUpdateBasis, REAL8, 0, OPTIONAL, "Poll update basis of the final fully-coherent stage, used with XMesh"); - XLALRegisterUvarMember( UseMetric, BOOLEAN, 0, OPTIONAL, "Use metric to restrict the search volume"); - XLALRegisterUvarMember( MetricIFO, STRINGVector, 0, OPTIONAL, "Use this IFOs to compute metric"); - XLALRegisterUvarMember( nB, REAL8, 0, OPTIONAL, "Fisher distance (e.g. for 1D: 1 = 1sigma, 2 = 2sigma, 3 = 3sigma, for 2D: 1.52 = 1sigma, 2.49 = 2sigma, 3.44 = 3sigma, for 3D: 1.88 = 1sigma, 2.83 = 2sigma, 3.76 = 3sigma, for 4D: 2.17 = 1sigma, 3.12 = 2sigma, 4.03 = 3sigma)"); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Signal, STRINGVector, 0, OPTIONAL, "Signal parameters [alpha,delta,freq,f1dot,f2dot,f3dot,cosi,psi,phi0,h0,asini,argp,ecc,tpssb,period]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Alpha, STRINGVector, 0, OPTIONAL, "Direction Alpha [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Delta, STRINGVector, 0, OPTIONAL, "Direction Delta [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Freq, STRINGVector, 0, OPTIONAL, "Direction Freq [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( f1dot, STRINGVector, 0, OPTIONAL, "Direction f1dot [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( f2dot, STRINGVector, 0, OPTIONAL, "Direction f2dot [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( f3dot, STRINGVector, 0, OPTIONAL, "Direction f3dot [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( TpSSB, STRINGVector, 0, OPTIONAL, "Direction TpSSB [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Argp, STRINGVector, 0, OPTIONAL, "Direction Argp [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( asini, STRINGVector, 0, OPTIONAL, "Direction asini [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ecc, STRINGVector, 0, OPTIONAL, "Direction ecc [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Period, STRINGVector, 0, OPTIONAL, "Direction Period [startpoint,min,max,startstep,scale,fixed,desc]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( DataFiles, STRING, 0, REQUIRED, "1st SFT file pattern") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( fnameout, STRING, 0, OPTIONAL, "Output filename") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( outputLoudest, BOOLEAN, 0, OPTIONAL, "Output loudest F-statistic candidate + estimated MLE amplitudes") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( outputTiming, BOOLEAN , 0, OPTIONAL, "Output timing information") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( refTime, REAL8, 0, OPTIONAL, "Ref. time for pulsar pars [Default: mid-time]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ephemEarth, STRING, 0, OPTIONAL, "Location of Earth ephemeris file") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ephemSun, STRING, 0, OPTIONAL, "Location of Sun ephemeris file") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( minStartTime, REAL8, 0, OPTIONAL, "1st stage min start time of observation") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( maxEndTime, REAL8, 0, OPTIONAL, "1st stage max end time of observation") == XLAL_SUCCESS, XLAL_EFUNC); + + XLAL_CHECK_MAIN( XLALRegisterUvarMember( tStack, REAL8, 0, OPTIONAL, "Duration of segments (sec)") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( segmentList, STRING, 0, OPTIONAL, "File containing a segment list used to compute Fisher ellipsoid: lines of form <startGPS endGPS duration[h] NumSFTs>") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( TargetedSearch, BOOLEAN, 0, OPTIONAL, "Do targeted search") == XLAL_SUCCESS, XLAL_EFUNC); + + XLAL_CHECK_MAIN( XLALRegisterUvarMember( avg2F, REAL8, 0, OPTIONAL, "average 2F of candidate") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Type, INT4, 0, OPTIONAL, "0=UNDEFINED_DIRECTION, 1=MODEL_SEARCH_DIR, 2=NO_DIRECTION, 3=ORTHO_1, 4=ORTHO_2, 5=ORTHO_NP1_QUAD, 6=ORTHO_NP1_NEG, 7=ORTHO_NP1_UNI, 8=DYN_ADDED, 9=ORTHO_2N, 10=LT_1, 11=LT_2, 12=LT_2N, 13=LT_NP1, 14=GPS_BINARY, 15=GPS_2N_STATIC, 16=GPS_2N_RAND, 17=GPS_NP1_STATIC_UNIFORM, 18=GPS_NP1_STATIC, 19=GPS_NP1_RAND_UNIFORM, 20=GPS_NP1_RAND, 21=PROSPECT_DIR") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalType, INT4, 0, OPTIONAL, "Type for the coherent stage in a chain search.") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( LTMADS, INT4, 0, OPTIONAL, "Regardless of Type also do Type=LT_NP1 search AFTER the regular search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalLTMADS, INT4, 0, OPTIONAL, "LTMADS for the coherent stage") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( DisplayDegree, INT4, 0, DEVELOPER, "0=empty,[1]=normal,[2]=verbose") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Epsilon, REAL8, 0, DEVELOPER, "Precision on reals") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MinMeshSize, REAL8, 0, DEVELOPER, "Miminmal mesh size") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MinPollSize, REAL8, 0, DEVELOPER, "Miminmal pol size") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MaxIterations, INT4, 0, DEVELOPER, "Maximal iterations") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelSearch, INT4, 0, OPTIONAL, "Model search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelEvalSort, INT4, 0, OPTIONAL, "Model evaluation sort") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( VnsSearch, REAL8, 0, OPTIONAL, "VNS search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MaxBBEval, INT4, 0, OPTIONAL, "Black box evaluation") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( LoopMeshCoarseningExponent, BOOLEAN, 0, OPTIONAL, "Loop over mesh coarsening exponents") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MinMeshCoarseningExponent, INT4, 0, OPTIONAL, "Minimal mesh coarsening exponent") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MaxMeshCoarseningExponent, INT4, 0, OPTIONAL, "Maxmimal mesh coarsening exponent") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( StepMeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent step size") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalMinMeshCoarseningExponent, INT4, 0, OPTIONAL, "Minimal mesh coarsening exponent of the final fully-coherent stage") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalMaxMeshCoarseningExponent, INT4, 0, OPTIONAL, "Maxmimal mesh coarsening exponent of the final fully-coherent stage") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalStepMeshCoarseningExponent, INT4, 0, OPTIONAL, "Mesh coarsening exponent step size of the final fully-coherent stage") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MeshRefiningExponent, INT4, 0, OPTIONAL, "Mesh refining exponent") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MeshType, INT4, 0, OPTIONAL, "Mesh type: 0 = XMesh, 1 = SMesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MeshUpdateBasis, REAL8, 0, OPTIONAL, "Mesh update basis, user with SMesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalMeshUpdateBasis, REAL8, 0, OPTIONAL, "Mesh update basis of the final fully-coherent stage, used with SMesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( PollUpdateBasis, REAL8, 0, OPTIONAL, "Poll update basis, used with XMesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalPollUpdateBasis, REAL8, 0, OPTIONAL, "Poll update basis of the final fully-coherent stage, used with XMesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( UseMetric, BOOLEAN, 0, OPTIONAL, "Use metric to restrict the search volume") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( MetricIFO, STRINGVector, 0, OPTIONAL, "Use this IFOs to compute metric") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( nB, REAL8, 0, OPTIONAL, "Fisher distance (e.g. for 1D: 1 = 1sigma, 2 = 2sigma, 3 = 3sigma, for 2D: 1.52 = 1sigma, 2.49 = 2sigma, 3.44 = 3sigma, for 3D: 1.88 = 1sigma, 2.83 = 2sigma, 3.76 = 3sigma, for 4D: 2.17 = 1sigma, 3.12 = 2sigma, 4.03 = 3sigma)") == XLAL_SUCCESS, XLAL_EFUNC); /* developer user variables */ - XLALRegisterUvarMember( blocksRngMed, INT4, 0, DEVELOPER, "RngMed block size"); - XLALRegisterUvarMember( SSBprecision, INT4, 0, DEVELOPER, "Precision for SSB transform"); - XLALRegisterUvarMember( FstatMethod, STRING, 0, OPTIONAL, XLALFstatMethodHelpString()); - XLALRegisterUvarMember( Dterms, INT4, 0, DEVELOPER, "No. of terms to keep in Dirichlet Kernel"); - XLALRegisterUvarMember( dopplermax, REAL8, 0, DEVELOPER, "Max Doppler shift"); - XLALRegisterUvarMember( SaveNomadStat, BOOLEAN, 0, OPTIONAL, "Save Nomad statistic files"); - XLALRegisterUvarMember( Seed, INT4, 0, OPTIONAL, "Random seed, use -1 for a random number based on PID"); - XLALRegisterUvarMember( ReSearch, BOOLEAN, 0, OPTIONAL, "Repeat the search starting from the best found point"); - XLALRegisterUvarMember( FinalReSearch, BOOLEAN, 0, OPTIONAL, "Final repeat of the search starting from the best found point"); - XLALRegisterUvarMember( RandomSearch, INT4, 0, OPTIONAL, "Search starting from random point inside the box, except for the first trial"); - XLALRegisterUvarMember( RandomSearchRadius, INT4, 0, OPTIONAL, "Radius in percent of the search band per direction to randomize around the starting point"); - XLALRegisterUvarMember( FixedSpindownSearch, BOOLEAN, 0, OPTIONAL, "Constant spindown search"); - XLALRegisterUvarMember( ClearCache, BOOLEAN, 0, DEVELOPER, "Clear the internal cache between runs"); - XLALRegisterUvarMember( ModelSearchMaxTrialPts, INT4, 0, DEVELOPER, "Limit on the number of points for one model search"); - XLALRegisterUvarMember( ModelQuadMinYSize, INT4, 0, DEVELOPER, "Inf. limit on the size of interpolation sets for quadratic models"); - XLALRegisterUvarMember( ModelQuadMaxYSize, INT4, 0, DEVELOPER, "Sup. limit on the size of interpolation sets for quadratic models"); - XLALRegisterUvarMember( ModelQuadRadiusFactor, REAL8, 0, DEVELOPER, "Quadratic model search radius factor"); - XLALRegisterUvarMember( ModelQuadUseWP, BOOLEAN, 0, DEVELOPER, "Enable the strategy to maintain well-poisedness with quadratic models"); - XLALRegisterUvarMember( ModelSearchOptimistic, BOOLEAN, 0, DEVELOPER, "If model search is optimistic or not"); - XLALRegisterUvarMember( ModelSearchProjToMesh, BOOLEAN, 0, DEVELOPER, "If model search trial points are projected to the mesh"); - XLALRegisterUvarMember( OpportunisticEval, BOOLEAN, 0, DEVELOPER, "Opportunistic strategy"); - XLALRegisterUvarMember( OpportunisticLuckyEval, BOOLEAN, 0, DEVELOPER, "Additional evaluation in opportunistic strategy"); - XLALRegisterUvarMember( version,BOOLEAN, 'V', SPECIAL, "Output version information"); - XLALRegisterUvarMember( log, BOOLEAN, 0, OPTIONAL, "Do logging"); - XLALRegisterUvarMember( BreakASAP,BOOLEAN, 0, OPTIONAL, "Break the search if we are within the expectation"); - XLALRegisterUvarMember( NoiseLimit, REAL8, 0, OPTIONAL, "Minimal acceptable fully-coherent 2F"); - XLALRegisterUvarMember( AcceptDev, REAL8, 0, OPTIONAL, "Number of standard deviations from the expectation to break the search if BreakASAP is used"); - XLALRegisterUvarMember( FStatSearchType, INT4, 0, OPTIONAL, "F-statistic search type: 0 - semi-coherent search, 1 - fully-coherent search, 2 - both"); - XLALRegisterUvarMember( SemicoherentStages, INT4, 0, OPTIONAL, "Number of semicoherent stages"); - XLALRegisterUvarMember( DumpSegments,BOOLEAN, 0, OPTIONAL, "Dump used segments at each stage"); - XLALRegisterUvarMember( DumpMetric,BOOLEAN, 0, DEVELOPER, "Dump the coherent and semicoherent metric for the signal parameters and exit."); - XLALRegisterUvarMember( DumpCache,BOOLEAN, 0, DEVELOPER, "Dump all computed parameter-space points to a file."); - XLALRegisterUvarMember( PredictFStat,BOOLEAN, 0, OPTIONAL, "Predict FStat"); - XLALRegisterUvarMember( ComputeStartingPointStatistics,BOOLEAN, 0, OPTIONAL, "Compute the semi-coherent and fully-coherent 2F value of the starting point"); - XLALRegisterUvarMember( ComputeDTS,BOOLEAN, 0, OPTIONAL, "Compute the squared Fisher distance to the signal in FStatSearchType=2 mode, using the Fisher matrix"); - XLALRegisterUvarMember( RoundStat,BOOLEAN, 0, OPTIONAL, "Round the F-value to RoundStatDigit"); - XLALRegisterUvarMember( RoundStatDigit,INT4, 0, OPTIONAL, "Rounding precision"); - XLALRegisterUvarMember( FinalRoundStatDigit,INT4, 0, OPTIONAL, "Final rounding precision"); - XLALRegisterUvarMember( BinarySearch,BOOLEAN, 0, OPTIONAL, "Do binary search"); - XLALRegisterUvarMember( BNSLEL,BOOLEAN, 0, DEVELOPER, "Use low-eccentricity approximation to compute BNS metric [only TRUE is supported for now!]"); - XLALRegisterUvarMember( HybridSearch,BOOLEAN, 0, OPTIONAL, "Do hybrid search (grid search in the Nomad search step)"); - XLALRegisterUvarMember( HybridSearchLatticeAtOnce,BOOLEAN, 0, OPTIONAL, "Compute the lattice for the hybrid search at once"); - XLALRegisterUvarMember( HybridSearchMismatch,REAL8, 0, OPTIONAL, "Hybrid search maximal mismatch"); - XLALRegisterUvarMember( HybridSearchLattice,STRING, 0, OPTIONAL, "Hybrid search lattice type: 'an-star' or 'cubic'"); - XLALRegisterUvarMember( HybridSearchPoints,INT4, 0, OPTIONAL, "Hybrid search number of points"); - XLALRegisterUvarMember( FinalHybridSearch,BOOLEAN, 0, OPTIONAL, "Final do hybrid search (grid search in the Nomad search step)"); - XLALRegisterUvarMember( FinalHybridSearchLatticeAtOnce,BOOLEAN, 0, OPTIONAL, "Final compute the lattice for the hybrid search at once"); - XLALRegisterUvarMember( FinalHybridSearchMismatch,REAL8, 0, OPTIONAL, "Final hybrid search maximal mismatch"); - XLALRegisterUvarMember( FinalHybridSearchLattice,STRING, 0, OPTIONAL, "Final hybrid search lattice type: 'an-star' or 'cubic'"); - XLALRegisterUvarMember( FinalHybridSearchPoints,INT4, 0, OPTIONAL, "Final hybrid search number of points"); - XLALRegisterUvarMember( metricType, INT4, 0, OPTIONAL, "Type of metric to compute: 0=phase-metric, 1=average F-metric"); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( blocksRngMed, INT4, 0, DEVELOPER, "RngMed block size") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( SSBprecision, INT4, 0, DEVELOPER, "Precision for SSB transform") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FstatMethod, INT4, 0, OPTIONAL, "F-statistic method to use" ) == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Dterms, INT4, 0, DEVELOPER, "No. of terms to keep in Dirichlet Kernel") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( dopplermax, REAL8, 0, DEVELOPER, "Max Doppler shift") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( SaveNomadStat, BOOLEAN, 0, OPTIONAL, "Save Nomad statistic files") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( Seed, INT4, 0, OPTIONAL, "Random seed, use -1 for a random number based on PID") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ReSearch, BOOLEAN, 0, OPTIONAL, "Repeat the search starting from the best found point") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalReSearch, BOOLEAN, 0, OPTIONAL, "Final repeat of the search starting from the best found point") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( RandomSearch, INT4, 0, OPTIONAL, "Search starting from random point inside the box, except for the first trial") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( RandomSearchRadius, INT4, 0, OPTIONAL, "Radius in percent of the search band per direction to randomize around the starting point") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FixedSpindownSearch, BOOLEAN, 0, OPTIONAL, "Constant spindown search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ClearCache, BOOLEAN, 0, DEVELOPER, "Clear the internal cache between runs") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelSearchMaxTrialPts, INT4, 0, DEVELOPER, "Limit on the number of points for one model search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelQuadMinYSize, INT4, 0, DEVELOPER, "Inf. limit on the size of interpolation sets for quadratic models") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelQuadMaxYSize, INT4, 0, DEVELOPER, "Sup. limit on the size of interpolation sets for quadratic models") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelQuadRadiusFactor, REAL8, 0, DEVELOPER, "Quadratic model search radius factor") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelQuadUseWP, BOOLEAN, 0, DEVELOPER, "Enable the strategy to maintain well-poisedness with quadratic models") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelSearchOptimistic, BOOLEAN, 0, DEVELOPER, "If model search is optimistic or not") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ModelSearchProjToMesh, BOOLEAN, 0, DEVELOPER, "If model search trial points are projected to the mesh") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( OpportunisticEval, BOOLEAN, 0, DEVELOPER, "Opportunistic strategy") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( OpportunisticLuckyEval, BOOLEAN, 0, DEVELOPER, "Additional evaluation in opportunistic strategy") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( log, BOOLEAN, 0, OPTIONAL, "Do logging") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( BreakASAP,BOOLEAN, 0, OPTIONAL, "Break the search if we are within the expectation") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( NoiseLimit, REAL8, 0, OPTIONAL, "Minimal acceptable fully-coherent 2F") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( AcceptDev, REAL8, 0, OPTIONAL, "Number of standard deviations from the expectation to break the search if BreakASAP is used") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FStatSearchType, INT4, 0, OPTIONAL, "F-statistic search type: 0 - semi-coherent search, 1 - fully-coherent search, 2 - both") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( SemicoherentStages, INT4, 0, OPTIONAL, "Number of semicoherent stages") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( DumpSegments,BOOLEAN, 0, OPTIONAL, "Dump used segments at each stage") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( DumpMetric,BOOLEAN, 0, DEVELOPER, "Dump the coherent and semicoherent metric for the signal parameters and exit.") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( DumpCache,BOOLEAN, 0, DEVELOPER, "Dump all computed parameter-space points to a file.") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( PredictFStat,BOOLEAN, 0, OPTIONAL, "Predict FStat") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ComputeStartingPointStatistics,BOOLEAN, 0, OPTIONAL, "Compute the semi-coherent and fully-coherent 2F value of the starting point") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( ComputeDTS,BOOLEAN, 0, OPTIONAL, "Compute the squared Fisher distance to the signal in FStatSearchType=2 mode, using the Fisher matrix") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( RoundStat,BOOLEAN, 0, OPTIONAL, "Round the F-value to RoundStatDigit") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( RoundStatDigit,INT4, 0, OPTIONAL, "Rounding precision") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalRoundStatDigit,INT4, 0, OPTIONAL, "Final rounding precision") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( BinarySearch,BOOLEAN, 0, OPTIONAL, "Do binary search") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( BNSLEL,BOOLEAN, 0, DEVELOPER, "Use low-eccentricity approximation to compute BNS metric [only TRUE is supported for now!]") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( HybridSearch,BOOLEAN, 0, OPTIONAL, "Do hybrid search (grid search in the Nomad search step)") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( HybridSearchLatticeAtOnce,BOOLEAN, 0, OPTIONAL, "Compute the lattice for the hybrid search at once") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( HybridSearchMismatch,REAL8, 0, OPTIONAL, "Hybrid search maximal mismatch") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( HybridSearchLattice,INT4, 0, OPTIONAL, "Hybrid search lattice type: 0 - cubic, 1 - an-star, 2 - max") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( HybridSearchPoints,INT4, 0, OPTIONAL, "Hybrid search number of points") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalHybridSearch,BOOLEAN, 0, OPTIONAL, "Final do hybrid search (grid search in the Nomad search step)") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalHybridSearchLatticeAtOnce,BOOLEAN, 0, OPTIONAL, "Final compute the lattice for the hybrid search at once") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalHybridSearchMismatch,REAL8, 0, OPTIONAL, "Final hybrid search maximal mismatch") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalHybridSearchLattice,INT4, 0, OPTIONAL, "Final hybrid search lattice type: 0 - cubic, 1 - an-star, 2 - max") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( FinalHybridSearchPoints,INT4, 0, OPTIONAL, "Final hybrid search number of points") == XLAL_SUCCESS, XLAL_EFUNC); + XLAL_CHECK_MAIN( XLALRegisterUvarMember( metricType, INT4, 0, OPTIONAL, "Type of metric to compute: 0=phase-metric, 1=average F-metric") == XLAL_SUCCESS, XLAL_EFUNC); /* read cmdline & cfgfile */ BOOLEAN should_exit = 0; - XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv ) == XLAL_SUCCESS, XLAL_EFUNC ); + XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv, lalAppsVCSInfoList ) == XLAL_SUCCESS, XLAL_EFUNC ); if ( should_exit ) { exit (1); } @@ -1645,11 +1642,8 @@ INT4 FCSearch::XLALInitUserVars ( int argc, char *argv[] ) usefulParams.nStacks = 1; usefulParams.SSBprec = uvar->SSBprecision; - if ( XLALParseFstatMethodString ( &usefulParams.Fmethod, uvar->FstatMethod ) != XLAL_SUCCESS ) { - XLALPrintError ("XLALParseFstatMethodString() failed.\n"); - return( FSTATFCNOMAD_EBAD ); - } - + usefulParams.Fmethod = uvar->FstatMethod; + /* set reference time for pulsar parameters */ if ( XLALUserVarWasSet(&uvar->refTime)) usefulParams.refTime = uvar->refTime; diff --git a/src/FollowUp/Nomad/FStatNomad.h b/src/FollowUp/Nomad/FStatNomad.h index d57a4a685a7b8fb485e3266de5adb54d7fa9d4e2..e7f86436020a87951993f02cd8ac7980e37f9b9a 100644 --- a/src/FollowUp/Nomad/FStatNomad.h +++ b/src/FollowUp/Nomad/FStatNomad.h @@ -71,7 +71,7 @@ extern "C" { CHAR *ephemEarth; CHAR *ephemSun; - CHAR *FstatMethod; + INT4 FstatMethod; CHAR *fnameout; CHAR *DataFiles; INT4 SortToplist; @@ -172,12 +172,12 @@ extern "C" { BOOLEAN HybridSearch; REAL8 HybridSearchMismatch; - CHAR *HybridSearchLattice; + INT4 HybridSearchLattice; INT4 HybridSearchPoints; BOOLEAN HybridSearchLatticeAtOnce; BOOLEAN FinalHybridSearch; REAL8 FinalHybridSearchMismatch; - CHAR *FinalHybridSearchLattice; + INT4 FinalHybridSearchLattice; INT4 FinalHybridSearchPoints; BOOLEAN FinalHybridSearchLatticeAtOnce; diff --git a/src/FollowUp/Nomad/libFStatNomad.cpp b/src/FollowUp/Nomad/libFStatNomad.cpp index 46e0b7cf73604e14900a78baa599d6a0662ceecb..26e834860d2474993808ae3a7f9abd6bfac29adc 100644 --- a/src/FollowUp/Nomad/libFStatNomad.cpp +++ b/src/FollowUp/Nomad/libFStatNomad.cpp @@ -3321,7 +3321,7 @@ FStatNomad::FStatNomad() { FStatNomad::~FStatNomad() {}; -void FStatNomad::HybridSearchCreateLattice(gsl_matrix *g, REAL4 m,CHAR *lattice) { +void FStatNomad::HybridSearchCreateLattice(gsl_matrix *g, REAL4 m,INT4 lattice) { tiling = NULL; tiling = XLALCreateLatticeTiling(DimMetric(SType(),USETYPE_SEARCH)); @@ -3340,7 +3340,6 @@ void FStatNomad::HybridSearchCreateLattice(gsl_matrix *g, REAL4 m,CHAR *lattice) XLAL_CHECK_MAIN(XLALSetTilingLatticeAndMetric(tiling, lattice, g, m) == XLAL_SUCCESS, XLAL_EFUNC); - // Create a lattice iterator LatticeTilingIterator *itr = XLALCreateLatticeTilingIterator(tiling, n); XLAL_CHECK_MAIN(itr != NULL, XLAL_EFUNC); diff --git a/src/FollowUp/Nomad/libFStatNomad.h b/src/FollowUp/Nomad/libFStatNomad.h index cb1ffbd4f90f221f19f175a53697591ba6599451..0e28cd785fa8957fbd6cdebaa7096d98f3d786cc 100644 --- a/src/FollowUp/Nomad/libFStatNomad.h +++ b/src/FollowUp/Nomad/libFStatNomad.h @@ -58,7 +58,7 @@ #include <lal/LALInitBarycenter.h> #include <lal/Velocity.h> #include <lal/ExtrapolatePulsarSpins.h> -#include <lal/EstimateAmplitudeParams.h> +#include <lal/FstatisticTools.h> #include <lal/Date.h> #include <lal/LALHough.h> #include <lal/NormalizeSFTRngMed.h> @@ -307,7 +307,7 @@ typedef struct { REAL8 df2dot; /**< coarse grid resolution in 2nd spindown */ UINT4 extraBinsFstat; /**< Extra bins required for Fstat calculation */ SSBprecision SSBprec; /**< SSB transform precision */ - FstatMethodType Fmethod; //!< which Fstat-method/algorithm to use + INT4 Fmethod; //!< which Fstat-method/algorithm to use UINT4 nSFTs; /**< total number of SFTs */ LALStringVector *detectorIDs; /**< vector of detector IDs */ REAL4 NSegmentsInvX[PULSAR_MAX_DETECTORS]; /**< effective inverse number of segments per detector (needed for correct averaging in single-IFO F calculation) */ @@ -419,7 +419,7 @@ public: m = v; } - void Lattice(CHAR *v){ + void Lattice(INT4 v){ lattice = v; } @@ -436,7 +436,7 @@ private: INT4 np; BOOLEAN partiallattice; std::vector<tDirection> directions; - CHAR* lattice; + INT4 lattice; INT4 mdim; REAL8 m; gsl_matrix *g; @@ -472,7 +472,7 @@ public: m = v; } - void Lattice(CHAR* v){ + void Lattice(INT4 v){ lattice = v; } @@ -490,7 +490,7 @@ private: INT4 np; BOOLEAN partiallattice; std::vector<tDirection> directions; - CHAR* lattice; + INT4 lattice; INT4 mdim; REAL8 m; gsl_matrix *g; @@ -2109,11 +2109,11 @@ public: return var_HybridSearchMismatch; } - void HybridSearchLattice(CHAR* v){ + void HybridSearchLattice(INT4 v){ var_HybridSearchLattice = v; } - CHAR* HybridSearchLattice(){ + INT4 HybridSearchLattice(){ return var_HybridSearchLattice; } @@ -2149,11 +2149,11 @@ public: return var_FinalHybridSearchMismatch; } - void FinalHybridSearchLattice(CHAR* v){ + void FinalHybridSearchLattice(INT4 v){ var_FinalHybridSearchLattice = v; } - CHAR* FinalHybridSearchLattice(){ + INT4 FinalHybridSearchLattice(){ return var_FinalHybridSearchLattice; } @@ -2182,7 +2182,7 @@ public: INT4 Nsegi[6]; - void HybridSearchCreateLattice(gsl_matrix *g, REAL4 m,CHAR *lattice); + void HybridSearchCreateLattice(gsl_matrix *g, REAL4 m,INT4 lattice); INT4 compute_min_extent(gsl_vector *minext, const gsl_matrix *g); MultiSFTVector *multiSFTs; @@ -2281,12 +2281,12 @@ private: BOOLEAN var_HybridSearch; BOOLEAN var_HybridSearchLatticeAtOnce; REAL4 var_HybridSearchMismatch; - CHAR *var_HybridSearchLattice; + INT4 var_HybridSearchLattice; INT4 var_HybridSearchPoints; BOOLEAN var_FinalHybridSearch; BOOLEAN var_FinalHybridSearchLatticeAtOnce; REAL4 var_FinalHybridSearchMismatch; - CHAR *var_FinalHybridSearchLattice; + INT4 var_FinalHybridSearchLattice; INT4 var_FinalHybridSearchPoints; UINT8 trials_cnt; diff --git a/src/GoodiesAndClones/makefakedata_v5.c b/src/GoodiesAndClones/makefakedata_v5.c index 8dbe9b36e7f9ff7405fbe1210fc7e2a3ff490973..47467e165c569c95954c6d2b2ad3061e6c340235 100644 --- a/src/GoodiesAndClones/makefakedata_v5.c +++ b/src/GoodiesAndClones/makefakedata_v5.c @@ -1,5 +1,5 @@ /* -* Copyright (C) 2013 Reinhard Prix +* Copyright (C) 2013, 2015 Reinhard Prix * Copyright (C) 2008, 2010 Karl Wette * Copyright (C) 2008 Chris Messenger * Copyright (C) 2007 Badri Krishnan, Reinhard Prix @@ -22,7 +22,7 @@ /** * \file - * \ingroup lalapps_pulsar_Injections + * \ingroup lalapps_pulsar_Tools * \author R. Prix, M.A. Papa, X. Siemens, B. Allen, C. Messenger */ @@ -58,6 +58,9 @@ #include <lal/BinaryPulsarTiming.h> #include <lal/Window.h> #include <lal/LALString.h> +#include <lal/LALCache.h> +#include <lal/Units.h> + #include <lal/TransientCW_utils.h> #include <lal/CWMakeFakeData.h> @@ -522,19 +525,16 @@ XLALInitUserVars ( UserVariables_t *uvar, int argc, char *argv[] ) /* noise */ XLALRegisterUvarMember ( noiseSFTs, STRING, 'D', OPTIONAL, "Noise-SFTs to be added to signal (Used also to set IFOs and timestamps)"); - XLALRegisterUvarMember ( version, BOOLEAN, 'V', SPECIAL, "Output version information"); - /* ----- 'expert-user/developer' options ----- */ XLALRegisterUvarMember ( randSeed, INT4, 0, DEVELOPER, "Specify random-number seed for reproducible noise (use system time otherwise)."); /* read cmdline & cfgfile */ BOOLEAN should_exit = 0; - XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv ) == XLAL_SUCCESS, XLAL_EFUNC ); + XLAL_CHECK( XLALUserVarReadAllInput( &should_exit, argc, argv, lalAppsVCSInfoList ) == XLAL_SUCCESS, XLAL_EFUNC ); if ( should_exit ) { exit (1); } - return XLAL_SUCCESS; } /* XLALInitUserVars() */ diff --git a/src/Makefile.am b/src/Makefile.am index 392ef4c0a2e00af049c12ce53ec3a7e0bd7203b7..45f66849bbfe7610ce99b5a6dec4c6ae5da8f74a 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -3,7 +3,6 @@ SUBDIRS = GoodiesAndClones \ FollowUp/AfterMath if NOMAD -SUBDIRS += SearchOptimization \ - FollowUp/Nomad +SUBDIRS += FollowUp/Nomad endif diff --git a/src/SearchOptimization/Makefile.am b/src/attic/SearchOptimization/Makefile.am similarity index 100% rename from src/SearchOptimization/Makefile.am rename to src/attic/SearchOptimization/Makefile.am diff --git a/src/SearchOptimization/SSDOptimize.cpp b/src/attic/SearchOptimization/SSDOptimize.cpp similarity index 100% rename from src/SearchOptimization/SSDOptimize.cpp rename to src/attic/SearchOptimization/SSDOptimize.cpp diff --git a/src/SearchOptimization/SSDOptimize.h b/src/attic/SearchOptimization/SSDOptimize.h similarity index 100% rename from src/SearchOptimization/SSDOptimize.h rename to src/attic/SearchOptimization/SSDOptimize.h diff --git a/src/SearchOptimization/SSDOptimizeEDS.cpp b/src/attic/SearchOptimization/SSDOptimizeEDS.cpp similarity index 100% rename from src/SearchOptimization/SSDOptimizeEDS.cpp rename to src/attic/SearchOptimization/SSDOptimizeEDS.cpp diff --git a/src/SearchOptimization/SSDOptimizeEDS.h b/src/attic/SearchOptimization/SSDOptimizeEDS.h similarity index 100% rename from src/SearchOptimization/SSDOptimizeEDS.h rename to src/attic/SearchOptimization/SSDOptimizeEDS.h diff --git a/src/lalapps/lalapps.h b/src/lalapps/lalapps.h index 408f32edd8ed8c5c129ae189888f1ac58f168eb5..213ef05eb710047294dab83650dac9e9e93c950f 100644 --- a/src/lalapps/lalapps.h +++ b/src/lalapps/lalapps.h @@ -23,6 +23,7 @@ #include <config.h> #include <stdio.h> #include <lal/LALDatatypes.h> +#include <LALAppsVCSInfo.h> #if defined(__cplusplus) extern "C" {