Commit bda59aed authored by Miroslav Shaltev's avatar Miroslav Shaltev
Browse files

Compile against lalpulsar 1.17.0.1 and NOMAD 3.9.1.

parent 2f076e7a
......@@ -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
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])
......
......@@ -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
......
......@@ -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);
}
......
......@@ -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);
......
......@@ -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;
......
......@@ -212,7 +212,7 @@ extern "C" {
INT4 uvar_Cost;
REAL8 uvar_ConTol;
CHAR *uvar_FstatMethod;
int uvar_FstatMethod;
};
......
......@@ -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++) {
......
......@@ -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.) ) ) );
};
......
This diff is collapsed.
......@@ -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;
......
......@@ -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);
......
......@@ -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;
......
/*
* 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() */
......
......@@ -3,7 +3,6 @@ SUBDIRS = GoodiesAndClones \
FollowUp/AfterMath
if NOMAD
SUBDIRS += SearchOptimization \
FollowUp/Nomad
SUBDIRS += FollowUp/Nomad
endif
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment