Stimfit  0.13.15
Classes | Typedefs | Enumerations | Functions | Variables
stf Namespace Reference

The stimfit namespace. More...

Classes

struct  parInfo
 Information about parameters used in storedFunc. More...
struct  storedFunc
 Function used for least-squares fitting. More...
class  wxProgressInfo
 Progress Info interface adapter; maps to wxProgressDialog. More...
class  Table
 A table used for printing information. More...
struct  UserInput
 Represents user input from dialogs that can be used in plugins. More...
struct  Plugin
 User-defined plugin. More...
struct  Extension
 User-defined Python extension. More...
struct  ifstreamMan
 Resource manager for ifstream objects. More...
struct  ofstreamMan
 Resource manager for ofstream objects. More...
class  Event
 Describes the attributes of an event. More...
struct  PyMarker
 A marker that can be set from Python. More...
struct  SectionAttributes
struct  SectionPointer

Typedefs

typedef boost::function
< double(double, const
Vector_double &)> 
Func
 A function taking a double and a vector and returning a double.
typedef boost::function
< Vector_double(double, const
Vector_double &)> 
Jac
 The jacobian of a stf::Func.
typedef boost::function
< double(double, double,
double, double, double)> 
Scale
 Scaling function for fit parameters.
typedef boost::function< Table(const
Vector_double &, const
std::vector< stf::parInfo >
, double)> 
Output
 Print the output of a fit into a stf::Table.
typedef boost::function< void(const
Vector_double &, double,
double, double, double, double,
Vector_double &)> 
Init
 Initialising function for the parameters in stf::Func to start a fit.
typedef boost::function
< Recording(const Recording
&, const Vector_double
&, std::map< std::string,
double > &)> 
PluginFunc
 Get a Recording, do something with it, return the new Recording.

Enumerations

enum  cursor_type {
  measure_cursor, peak_cursor, base_cursor, decay_cursor,
  latency_cursor, zoom_cursor, event_cursor, undefined_cursor
}
 Mouse cursor types. More...
enum  direction { up, down, both, undefined_direction }
 The direction of peak calculations. More...
enum  zoom_channels { zoomch1, zoomch2, zoomboth }
 Determines which channels to scale. More...
enum  latency_mode {
  manualMode = 0, peakMode = 1, riseMode = 2, halfMode = 3,
  footMode = 4, undefinedMode
}
 Latency cursor settings. More...
enum  latency_window_mode { defaultMode = 0, windowMode = 1 }
 Latency window settings. More...
enum  extraction_mode { criterion, correlation, deconvolution }
 Deconvolution. More...

Functions

template<typename T >
linFit (const std::vector< T > &x, const std::vector< T > &y, T &m, T &c)
 Performs a linear fit.
double StfDll lmFit (const Vector_double &data, double dt, const stf::storedFunc &fitFunc, const Vector_double &opts, bool use_scaling, Vector_double &p, std::string &info, int &warning)
 Uses the Levenberg-Marquardt algorithm to perform a non-linear least-squares fit.
double flin (double x, const Vector_double &p)
 Linear function.
void flin_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Dummy function to be passed to stf::storedFunc for linear functions.
stf::storedFunc initLinFunc ()
 initializes a linear function
Vector_double get_scale (Vector_double &data, double oldx)
 Compute and perform normalisation.
Vector_double LM_default_opts ()
 Return default LM options.
double base (double &var, const std::vector< double > &data, std::size_t llb, std::size_t ulb)
 Calculate the average of all sampling points between and including llb and ulb.
double peak (const std::vector< double > &data, double base, std::size_t llp, std::size_t ulp, int pM, stf::direction, double &maxT)
 Find the peak value of data between llp and ulp.
double threshold (const std::vector< double > &data, std::size_t llp, std::size_t ulp, double slope, double &thrT, std::size_t windowLength)
 Find the value within data between llp and ulp at which slope is exceeded.
double risetime (const std::vector< double > &data, double base, double ampl, double left, double right, double frac, std::size_t &tLoId, std::size_t &tHiId, double &tLoReal)
 Find 20 to 80% rise time of an event in data.
double risetime2 (const std::vector< double > &data, double base, double ampl, double left, double right, double frac, double &innerTLoReal, double &innerTHiReal, double &outerTLoReal, double &outerTHiReal)
 Find 20 to 80% rise time of an event in data.
double t_half (const std::vector< double > &data, double base, double ampl, double left, double right, double center, std::size_t &t50LeftId, std::size_t &t50RightId, double &t50LeftReal)
 Find the full width at half-maximal amplitude of an event within data.
double maxRise (const std::vector< double > &data, double left, double right, double &maxRiseT, double &maxRiseY, std::size_t windowLength)
 Find the maximal slope during the rising phase of an event within data.
double maxDecay (const std::vector< double > &data, double left, double right, double &maxDecayT, double &maxDecayY, std::size_t windowLength)
 Find the maximal slope during the decaying phase of an event within data.
double fexp (double x, const Vector_double &p)
 Sum of n exponential functions.
Vector_double fexp_jac (double x, const Vector_double &p)
 Computes the Jacobian of stf::fexp().
void fexp_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::fexp() to data.
void fexp_init2 (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Yet another initialiser for fitting stf::fexp() to data.
double fexpde (double x, const Vector_double &p)
 Monoexponential function with delay.
void fexpde_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::fexpde() to data.
double fexpbde (double x, const Vector_double &p)
 Biexponential function with delay.
void fexpbde_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::fexpde() to data.
double falpha (double x, const Vector_double &p)
 Alpha function.
Vector_double falpha_jac (double x, const Vector_double &p)
 Computes the Jacobian of stf::falpha().
double fHH (double x, const Vector_double &p)
 Hodgkin-Huxley sodium conductance function.
double fgauss (double x, const Vector_double &p)
 Computes the sum of an arbitrary number of Gaussians.
Vector_double fgauss_jac (double x, const Vector_double &p)
 Computes the Jacobian of a sum of Gaussians.
double fgnabiexp (double x, const Vector_double &p)
 power of 1 sodium conductance function.
Vector_double fgnabiexp_jac (double x, const Vector_double &p)
 Computes the Jacobian of stf::fgnabiexp().
void falpha_init (const Vector_double &data, double base, double peak, double RTLoHI, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::falpha() to data.
void fgauss_init (const Vector_double &data, double base, double peak, double RTLoHI, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::fgauss() to data.
void fHH_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::falpha() to data.
void fgnabiexp_init (const Vector_double &data, double base, double peak, double RTLoHi, double HalfWidth, double dt, Vector_double &pInit)
 Initialises parameters for fitting stf::falpha() to data.
double xscale (double param, double xscale, double xoff, double yscale, double yoff)
 Scales a parameter that linearly depends on x.
double xunscale (double param, double xscale, double xoff, double yscale, double yoff)
 Unscales a parameter that linearly depends on x.
double yscale (double param, double xscale, double xoff, double yscale, double yoff)
 Scales a parameter that linearly depends on y.
double yscaleoffset (double param, double xscale, double xoff, double yscale, double yoff)
 Scales a parameter that linearly depends on y and adds an offset.
double yunscale (double param, double xscale, double xoff, double yscale, double yoff)
 Unscales a parameter that linearly depends on y.
double yunscaleoffset (double param, double xscale, double xoff, double yscale, double yoff)
 Unscales a parameter that linearly depends on y and removes the offset.
std::vector< stf::parInfogetParInfoExp (int n_exp)
 Creates stf::parInfo structs for n-exponential functions.
stf::Table outputWTau (const Vector_double &p, const std::vector< stf::parInfo > &parsInfo, double chisqr)
 Calculates a weighted time constant.
std::size_t whereis (const Vector_double &data, double value)
 Finds the index of data where value is encountered for the first time.
std::vector< stf::storedFuncGetFuncLib ()
 Returns the library of functions for non-linear regression.
Vector_double nojac (double x, const Vector_double &p)
 Dummy function, serves as a placeholder to initialize functions without a Jacobian.
double noscale (double param, double xscale, double xoff, double yscale, double yoff)
 Dummy function, serves as a placeholder to initialize parameters without a scaling function.
Table defaultOutput (const Vector_double &pars, const std::vector< parInfo > &parsInfo, double chisqr)
 Default fit output function, constructing a stf::Table from the parameters, their description and chisqr.
template<typename T >
SQR (T a)
 Calculates the square of a number.
Vector_double filter (const Vector_double &toFilter, std::size_t filter_start, std::size_t filter_end, const Vector_double &a, int SR, stf::Func func, bool inverse=false)
 Convolves a data set with a filter function.
std::map< double, int > histogram (const Vector_double &data, int nbins=-1)
 Computes a histogram.
StfDll Vector_double deconvolve (const Vector_double &data, const Vector_double &templ, int SR, double hipass, double lopass, stfio::ProgressInfo &progDlg)
 Deconvolves a template from a signal.
template<class T >
std::vector< T > cubicSpline (const std::vector< T > &y, T oldF, T newF)
 Interpolates a dataset using cubic splines.
template<class T >
std::vector< T > diff (const std::vector< T > &input, T x_scale)
 Differentiate data.
double integrate_simpson (const Vector_double &input, std::size_t a, std::size_t b, double x_scale)
 Integration using Simpson's rule.
double integrate_trapezium (const Vector_double &input, std::size_t a, std::size_t b, double x_scale)
 Integration using the trapezium rule.
int linsolv (int m, int n, int nrhs, Vector_double &A, Vector_double &B)
 Solves a linear equation system using LAPACK.
Vector_double quad (const Vector_double &data, std::size_t begin, std::size_t end)
 Solve quadratic equations for 3 adjacent sampling points.
StfDll Vector_double detectionCriterion (const Vector_double &data, const Vector_double &templ, stfio::ProgressInfo &progDlg)
 Computes the event detection criterion according to Clements & Bekkers (1997).
StfDll std::vector< int > peakIndices (const Vector_double &data, double threshold, int minDistance)
 Searches for positive-going peaks.
StfDll Vector_double linCorr (const Vector_double &va1, const Vector_double &va2, stfio::ProgressInfo &progDlg)
 Computes the linear correlation between two arrays.
double fgaussColqu (double x, const Vector_double &p)
 Computes a Gaussian that can be used as a filter kernel.
double fboltz (double x, const Vector_double &p)
 Computes a Boltzmann function.
double fbessel (double x, int n)
 Computes a Bessel polynomial.
double fbessel4 (double x, const Vector_double &p)
 Computes a 4th-order Bessel polynomial that can be used as a filter kernel.
int fac (int arg)
 Computes the faculty of an integer.
int pow2 (int arg)
 Computes \( 2^{arg} \). Uses the bitwise-shift operator (<<).
std::string wx2std (const wxString &wxs)
wxString std2wx (const std::string &sst)
wxString sectionToString (const Section &section)
 Converts a Section to a wxString.
wxString CreatePreview (const wxString &fName)
 Creates a preview of a text file.
wxString noPath (const wxString &fName)
 Strips the directory off a full path name, returns only the filename.
int round (double toRound)
 Does what it says.

Variables

const double PI = 3.14159265358979323846
 Add decimals if you are not satisfied.

Detailed Description

The stimfit namespace.

All essential core functions and classes are in this namespace. Its purpose is to reduce name mangling problems.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines