Skip to content

Commit 25b0947

Browse files
author
jenkins
committed
git subrepo pull (merge) ore
subrepo: subdir: "ore" merged: "df888119cd" upstream: origin: "git@gitlab.acadiasoft.net:qs/ore.git" branch: "master" commit: "91ed4f01b5" git-subrepo: version: "0.4.6" origin: "https://github.com/ingydotnet/git-subrepo" commit: "73a0129"
2 parents 7e9e0f9 + 91ed4f0 commit 25b0947

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

QuantExt/qle/math/openclenvironment.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,8 @@ void OpenClContext::updateVariatesPool() {
665665

666666
// clang-format off
667667
// ported from from QuantLib::InverseCumulativeNormal
668-
std::string sourceInvCumN = fpTypeStr + " ore_invCumN(const uint x0) {\n"
668+
std::string sourceInvCumN = fpTypeStr + " ore_invCumN(const uint x0);\n" +
669+
fpTypeStr + " ore_invCumN(const uint x0) {\n"
669670
" const " + fpTypeStr + " a1_ = -3.969683028665376e+01" + fpSuffix + ";\n"
670671
" const " + fpTypeStr + " a2_ = 2.209460984245205e+02" + fpSuffix + ";\n"
671672
" const " + fpTypeStr + " a3_ = -2.759285104469687e+02" + fpSuffix + ";\n"
@@ -1136,6 +1137,7 @@ void OpenClContext::finalizeCalculation(std::vector<double*>& output) {
11361137

11371138
// clang-format off
11381139
const std::string includeSource =
1140+
"bool ore_closeEnough(const " + fpTypeStr + " x, const " + fpTypeStr + " y);\n"
11391141
"bool ore_closeEnough(const " + fpTypeStr + " x, const " + fpTypeStr + " y) {\n"
11401142
" const " + fpTypeStr + " tol = 42.0" + fpSuffix + " * " + fpEpsStr + ";\n"
11411143
" " + fpTypeStr + " diff = fabs(x - y);\n"
@@ -1144,10 +1146,13 @@ void OpenClContext::finalizeCalculation(std::vector<double*>& output) {
11441146
" return diff <= tol * fabs(x) || diff <= tol * fabs(y);\n"
11451147
"}\n"
11461148
"\n" +
1149+
fpTypeStr + " ore_indicatorEq(const " + fpTypeStr + " x, const " + fpTypeStr + " y);\n" +
11471150
fpTypeStr + " ore_indicatorEq(const " + fpTypeStr + " x, const " + fpTypeStr + " y) "
11481151
"{ return ore_closeEnough(x, y) ? 1.0" + fpSuffix + " : 0.0" + fpSuffix +"; }\n\n" +
1152+
fpTypeStr + " ore_indicatorGt(const " + fpTypeStr + " x, const " + fpTypeStr + " y);\n" +
11491153
fpTypeStr + " ore_indicatorGt(const " + fpTypeStr + " x, const " + fpTypeStr + " y) " +
11501154
"{ return x > y && !ore_closeEnough(x, y); }\n\n" +
1155+
fpTypeStr + " ore_indicatorGeq(const " + fpTypeStr + " x, const " + fpTypeStr + " y);\n";
11511156
fpTypeStr + " ore_indicatorGeq(const " + fpTypeStr + " x, const " + fpTypeStr + " y) { return x > y || ore_closeEnough(x, y); }\n\n";
11521157
// clang-format on
11531158

0 commit comments

Comments
 (0)