Commit 86dd3cb5 authored by Florian Wittkamp's avatar Florian Wittkamp
Browse files

Merge branch 'import_Seitosh' into 'Seitosh/import'

Import seitosh

@wittkamp @lgass @r 
[libstfinv](https://git.scc.kit.edu/Seitosh/Seitosh/tree/master/src/libs/libstfinv) in [Seitosh](https://git.scc.kit.edu/Seitosh/Seitosh) provides a new feature:

A new taper option for procedures operating in the Fourier domain is implemenetd in libstfinv. This can be used to remove unwanted acausal or coda components of the impulse response of the source time function correction filter. See usage information provided by libstfinv:

    A time domain taper can be applied to the impulse response of the correction
    filter by using option irtap. Four time values are given in units of seconds:
    t1, t2, t3, and t4. They must be in increasing order and (t4-t1) must be
    smaller than the total duration of the time series used to represent signals
    internally. Times value are allowed to be negative. Time series are understood
    to be periodic (due to discrete Fourier transformation). Prior to application
    of the correction filter to the time series passed to the algorithm, the
    correction filter is transformed to the time domain, tapered, and then
    transformed to the Fourier domain again. The values of the taper are:
      0                              if       t <  t1
      0.5-0.5*cos(pi*(t-t1)/(t2-t1)) if t1 <= t <= t2
      1                              if t2 <  t <  t3
      0.5+0.5*cos(pi*(t-t3)/(t3-t4)) if t3 <= t <= t4
      0                              if       t >  t4

Test-cases are set up for [soutifu](https://git.scc.kit.edu/Seitosh/Seitosh/blob/master/src/ts/wf/soutifu.cc) and are described in the accompanying [README.soutifu](https://git.scc.kit.edu/Seitosh/Seitosh/blob/master/src/ts/wf/testcases/README.soutifu).

A vendor update has taken place in [thof/IFOS2D](https://git.scc.kit.edu/thof/IFOS2D) see [issue 5](https://git.scc.kit.edu/thof/IFOS2D/issues/5) there. The code in contrib compiles and installs well. The integration into IFOS2D still is to be tested.

See merge request !3
parents abdeb652 f8fb4695
this is <README>
============================================================================
AFF --- A container for numbers
-------------------------------
$Id$
============================================================================
For compilation instructions see README.1st in the root directory of the tar-ball or
http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/docs/installation
This software is part of the project Seitosh. See README.1st in the root
directory of the collection or https://git.scc.kit.edu/Seitosh/Seitosh for
general installation instructions.
The AFF (Array of Friederich and Forbriger) is a lightweight class library. It
offers a simple and easy to use container for numbers as is necessary in
......
this is <COPYING>
============================================================================
libfourier
----------
$Id$
============================================================================
Copyright (c) 2002, 2013 by Thomas Forbriger
......
# this is <Makefile>
# ----------------------------------------------------------------------------
# $Id$
#
# Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt)
#
......@@ -76,6 +75,8 @@ $(LOCLIBDIR)/%: install-include %
#----------------------------------------------------------------------
DOXYTXT=$(wildcard doxygen*txt)
flist: Makefile $(wildcard *.f *.inc *.h *.cc *.c README *.cfg) COPYING \
$(DOXYTXT)
echo $^ | tr ' ' '\n' | sort > $@
......
this is <README>
============================================================================
FOURIER --- Fourier coefficients library
-------------------------------
$Id$
============================================================================
For compilation instructions see README.1st in the root directory of the tar-ball or
http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/docs/installation
This software is part of the project Seitosh. See README.1st in the root
directory of the collection or https://git.scc.kit.edu/Seitosh/Seitosh for
general installation instructions.
The library provides modules to perform Fourier transformations and to
operate on Fourier transforms.An interface to FFTW is available.Signal
......
......@@ -3,8 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
*
* ----
* libfourier is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
......@@ -41,8 +39,6 @@
*/
#define TF_CFFTWTEST_C_VERSION \
"TF_CFFTWTEST_C V1.0 "
#define TF_CFFTWTEST_C_CVSID \
"$Id$"
#include<drfftw.h>
#include<stdio.h>
......@@ -105,7 +101,6 @@ void process(int n, int m)
int main()
{
printf("%s\n", TF_CFFTWTEST_C_VERSION);
printf("%s\n", TF_CFFTWTEST_C_CVSID);
/*
* the code provided in the tutorial for rfftw_one produces segmentation
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 16/05/2011
*
......@@ -37,8 +36,6 @@
*/
#define CXXFFTWARTEST_VERSION \
"CXXFFTWARTEST V1.2 test fftw3 array engine"
#define CXXFFTWARTEST_CVSID \
"$Id$"
// use the input/output facilities from the standard library
#include <iostream>
......@@ -140,7 +137,6 @@ int main(int iargc, char* argv[])
// define full help text
char help_text[]=
{
CXXFFTWARTEST_CVSID
"\n"
"input input file name\n"
"output output file name\n"
......@@ -218,7 +214,7 @@ int main(int iargc, char* argv[])
// report program version if in verbose mode
if (opt.verbose)
{ cout << CXXFFTWARTEST_VERSION << endl << CXXFFTWARTEST_CVSID << endl; }
{ cout << CXXFFTWARTEST_VERSION << endl; }
// extract commandline arguments
// here the rest of the command line is parsed; i.e. the names of input
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 12/09/2007
*
......@@ -35,8 +34,6 @@
*/
#define CXXFFTWTEST_VERSION \
"CXXFFTWTEST V1.1 a small test program for fftw when called from C++"
#define CXXFFTWTEST_CVSID \
"$Id$"
#include <iostream>
#include <tfxx/commandline.h>
......@@ -123,7 +120,6 @@ int main(int iargc, char* argv[])
// define full help text
char help_text[]=
{
CXXFFTWTEST_CVSID
"\n"
"-n n set number of samples to n\n"
"-m f set frequency to f\n"
......
......@@ -3,8 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
*
* Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt)
*
* C++ library to operate on Fourier transforms (libfourierxx)
......@@ -34,8 +32,6 @@
/*! \mainpage
\author Thomas Forbriger
\since 2002
\date $Date$
\version $Id$
The library provides modules to perform Fourier transformations and to operate
on Fourier transforms.
......@@ -128,6 +124,14 @@ Further stuff will be collected in this library in the future.
* integral transform, where
* \f$\Delta\omega=2\pi/T\f$ and \f$T=N\Delta t\f$.
*
* The library provides functions which return the appropriate scaling factors
* such that application of a inverse transformation in sequence with a
* forward transformation is an identity-operation.
*
* \sa fourier::fft::DRFFTWAFFArrayEngine::scale_series,
* fourier::fft::DRFFTWAFFArrayEngine::scale_spectrum,
* fourier::fft::DRFFTWAFF::scale_series,
* fourier::fft::DRFFTWAFF::scale_spectrum
*/
// ----- END OF doxygen.txt -----
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 11/09/2007
*
......@@ -35,8 +34,6 @@
*/
#define FOURIER_ERROR_CC_VERSION \
"FOURIER_ERROR_CC V1.1"
#define FOURIER_ERROR_CC_CVSID \
"$Id$"
#include <iostream>
#include <fourier/error.h>
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 11/09/2007
*
......@@ -39,8 +38,6 @@
#define FOURIER_ERROR_H_VERSION \
"FOURIER_ERROR_H V1.0"
#define FOURIER_ERROR_H_CVSID \
"$Id$"
namespace fourier {
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 05/01/2003
*
......@@ -35,8 +34,6 @@
*/
#define TF_FCOMMAND_CC_VERSION \
"TF_FCOMMAND_CC V1.0 "
#define TF_FCOMMAND_CC_CVSID \
"$Id$"
#include <fourier/fcommand.h>
#include <fstream>
......@@ -79,11 +76,8 @@ namespace fourier {
{
os << endl;
os << TF_FCOMMAND_H_VERSION << endl;
os << TF_FCOMMAND_H_CVSID << endl;
os << TF_FILTERS_H_VERSION << endl;
os << TF_FILTERS_H_CVSID << endl;
os << TF_POLESNZEROES_H_VERSION << endl;
os << TF_POLESNZEROES_H_CVSID << endl;
}
}
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 05/01/2003
*
......@@ -39,8 +38,6 @@
#define TF_FCOMMAND_H_VERSION \
"TF_FCOMMAND_H V1.0 "
#define TF_FCOMMAND_H_CVSID \
"$Id$"
#include<iostream>
#include<fourier/filters.h>
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 11/07/2006
*
......@@ -42,8 +41,6 @@
*/
#define TF_FFTWAFF_CC_VERSION \
"TF_FFTWAFF_CC V1.4"
#define TF_FFTWAFF_CC_CVSID \
"$Id$"
#include <iostream>
#include <fourier/fftwaff.h>
......@@ -308,7 +305,15 @@ namespace fourier {
/*----------------------------------------------------------------------*/
//! Return appropriate scaling factor for sampling interval dt.
/*! \brief Return appropriate scaling factor for sampling interval dt.
*
* Factor to be applied when transforming to time domain.
*
* \param[in] dt sampling interval
* \return scalar factor to be applied to all samples
*
* \sa \ref sec_fftw3_integral_transform
*/
DRFFTWAFF::Tsample DRFFTWAFF::scale_series(const Tsample& dt) const
{
return(1./(Msize*dt));
......@@ -316,7 +321,15 @@ namespace fourier {
/*----------------------------------------------------------------------*/
//! Return appropriate scaling factor for sampling interval dt.
/*! \brief Return appropriate scaling factor for sampling interval dt.
*
* Factor to be applied when transforming to Fourier domain.
*
* \param[in] dt sampling interval
* \return scalar factor to be applied to all samples
*
* \sa \ref sec_fftw3_integral_transform
*/
DRFFTWAFF::Tsample DRFFTWAFF::scale_spectrum(const Tsample& dt) const
{
return(dt);
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 11/07/2006
*
......@@ -75,8 +74,6 @@
#define TF_FFTWAFF_H_VERSION \
"TF_FFTWAFF_H V1.3"
#define TF_FFTWAFF_H_CVSID \
"$Id$"
#include<complex>
#ifdef FFTWFALLBACK
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 13/05/2011
*
......@@ -37,8 +36,6 @@
*/
#define TF_FFTWAFFAR_CC_VERSION \
"TF_FFTWAFFAR_CC V1.1"
#define TF_FFTWAFFAR_CC_CVSID \
"$Id$"
#include <iostream>
#include <fourier/fftwaffar.h>
......@@ -253,7 +250,15 @@ namespace fourier {
/*----------------------------------------------------------------------*/
//! Return appropriate scaling factor for sampling interval dt.
/*! \brief Return appropriate scaling factor for sampling interval dt.
*
* Factor to be applied when transforming to time domain.
*
* \param[in] dt sampling interval
* \return scalar factor to be applied to all samples
*
* \sa \ref sec_fftw3_integral_transform
*/
DRFFTWAFFArrayEngine::Tsample
DRFFTWAFFArrayEngine::scale_series(const Tsample& dt) const
{
......@@ -262,7 +267,15 @@ namespace fourier {
/*----------------------------------------------------------------------*/
//! Return appropriate scaling factor for sampling interval dt.
/*! \brief Return appropriate scaling factor for sampling interval dt.
*
* Factor to be applied when transforming to Fourier domain.
*
* \param[in] dt sampling interval
* \return scalar factor to be applied to all samples
*
* \sa \ref sec_fftw3_integral_transform
*/
DRFFTWAFFArrayEngine::Tsample
DRFFTWAFFArrayEngine::scale_spectrum(const Tsample& dt) const
{
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 13/05/2011
*
......@@ -44,8 +43,6 @@
#define TF_FFTWAFFAR_H_VERSION \
"TF_FFTWAFFAR_H V1.2"
#define TF_FFTWAFFAR_H_CVSID \
"$Id$"
#include<complex>
#include<fftw3.h>
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 05/01/2003
*
......@@ -34,16 +33,15 @@
* ============================================================================
*/
#define TF_FILTER_CC_VERSION \
"TF_FILTER_CC V1.0 "
#define TF_FILTER_CC_CVSID \
"$Id$"
"TF_FILTER_CC V1.0"
#include <fourier/filters.h>
#include <fourier/error.h>
#include <cmath>
namespace fourier {
const double Filter::pi;
const double Filter::pi=M_PI;
const Filter::Tcvalue Filter::ime=Tcvalue(0.,1.);
/*----------------------------------------------------------------------*/
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 05/01/2003
*
......@@ -40,9 +39,7 @@
#ifndef TF_FILTERS_H_VERSION
#define TF_FILTERS_H_VERSION \
"TF_FILTERS_H V1.0 "
#define TF_FILTERS_H_CVSID \
"$Id$"
"TF_FILTERS_H V1.0"
#include<fourier/polesnzeroes.h>
......@@ -53,7 +50,7 @@ namespace fourier {
typedef PolesNZeroes Tbase;
typedef Tbase::Tcvalue Tcvalue;
static const double pi=3.141592653589793;
static const double pi;
static const Tcvalue ime;
Filter(): Tbase(), Mfrequency(false) { }
......
c this is <filters.inc>
c ----------------------------------------------------------------------------
c ($Id$)
c
c Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt)
c
......
......@@ -3,7 +3,6 @@
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 05/01/2003
*
......@@ -34,8 +33,6 @@
*/
#define TF_POLESNZEROES_CC_VERSION \
"TF_POLESNZEROES_CC V1.0 "
#define TF_POLESNZEROES_CC_CVSID \
"$Id$"
#include <fourier/polesnzeroes.h>
......
Markdown is supported
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