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,15 +2,15 @@ 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.
Notice:
We request that any academic report, publication, or other
......@@ -18,29 +18,19 @@ Notice:
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
CWSeaOptiFol requires among others
LALSuite - https://git.ligo.org/lscsoft/lalsuite
NOMAD - https://www.gerad.ca/nomad/
Other resources:
For convenience you can use an autotooled version of NOMAD found under
https://github.com/cvscpp/sgtelib
https://github.com/cvscpp/nomad
Binary releases of LALApps for various platforms:
http://www.lsc-group.phys.uwm.edu/daswg/download/repositories.html
Typical installation steps
Please see the LALApps webpage for more information:
http://www.lsc-group.phys.uwm.edu/daswg/projects/lalapps.html
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,7 +2058,7 @@ 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);
}
......
......@@ -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