summaryrefslogtreecommitdiff
path: root/debian/patches/0004-Fix-NaN-propagation.patch
blob: dae12ec22c9ff954a654734183247b50b7bb0239 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
From: Gard Spreemann <gspr@nonempty.org>
Date: Thu, 30 Jul 2020 10:25:38 +0200
Subject: Fix NaN propagation.

This is based on SciPy commit
 4eb242fabeef7d1871d21936bee275be4fda1844
---
 lbfgsb.f | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lbfgsb.f b/lbfgsb.f
index 7c6b7fc..501879b 100644
--- a/lbfgsb.f
+++ b/lbfgsb.f
@@ -2977,6 +2977,11 @@ c     ************
       sbgnrm = zero
       do 15 i = 1, n
         gi = g(i)
+        if (gi.ne.gi) then
+c          NaN value in gradient: propagate it
+           sbgnrm = gi
+           return
+        endif
         if (nbd(i) .ne. 0) then
            if (gi .lt. zero) then
               if (nbd(i) .ge. 2) gi = max((x(i)-u(i)),gi)