X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=binaries%2Fsrc%2Fmafft%2Fextensions%2Fmxscarna_src%2FUtil.hpp;fp=binaries%2Fsrc%2Fmafft%2Fextensions%2Fmxscarna_src%2FUtil.hpp;h=0000000000000000000000000000000000000000;hb=6e0ce943f09b5ac30f3eb8dc0f20bc75114669ce;hp=eab7667f30881b366f97f1863aab171d2b6e5378;hpb=48f0451143441afce738d887b0cde1fb5cdbc02e;p=jabaws.git diff --git a/binaries/src/mafft/extensions/mxscarna_src/Util.hpp b/binaries/src/mafft/extensions/mxscarna_src/Util.hpp deleted file mode 100644 index eab7667..0000000 --- a/binaries/src/mafft/extensions/mxscarna_src/Util.hpp +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef UTIL_H -#define UTIL_H - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -//#include // mingw de error, by katoh -#include - -namespace ProbCons { - -const double IMPOSSIBLE = -FLT_MAX + 1000; -const double IMPOSSIBLEDBL = -DBL_MAX + 10000; - -namespace MXSCARNA { -template -inline bool -IsPossible(const T& v) { - return (v > (IMPOSSIBLE + 1.0e-5)); -} - -template -inline T -logSum(const T& a, const T& b) -{ - if (a >= b) { - return a + log(1.0 + exp(b - a)); - } else { - return b + log(1.0 + exp(a - b)); - } -} - -template -inline T -logSub(const T&a, const T& b) -{ - if(a > b) { - return log(exp(a) - exp(b)); - } - else { - return log(exp(a) - exp(b)); - } -} - -template -inline T -logSum(const T& a, const T& b, const T& c) -{ - if (a >= b) { - if( a >= c ) { - return a + log(1.0 + (exp(b - a) + exp(c - a))); - } - else { - if( b >= c) { - return b + log(exp(a - b) + 1.0 + exp(c - b)); - } - } - } - return c + log(exp(a - c) + exp(b - c) + 1.0); -} - -} - -template -inline T -logSumExp(const T& x, const T& y) -{ - if(x == y) return x + 0.69314718055; - double vmin = std::min(x, y); - double vmax = std::max(x, y); - - if (vmax > vmin + 50) { - return vmax; - } - else { - return vmax + std::log (std::exp (vmin - vmax) + 1.0); - } -} -} -#endif /* UTIL_H */