[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #51966] psi function wrong when built with 64-
From: |
Mike Miller |
Subject: |
[Octave-bug-tracker] [bug #51966] psi function wrong when built with 64-bit Fortran indexing |
Date: |
Fri, 8 Sep 2017 17:45:16 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0 |
URL:
<http://savannah.gnu.org/bugs/?51966>
Summary: psi function wrong when built with 64-bit Fortran
indexing
Project: GNU Octave
Submitted by: mtmiller
Submitted on: Fri 08 Sep 2017 02:45:15 PM PDT
Category: Octave Function
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Incorrect Result
Status: None
Assigned to: None
Originator Name:
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Release: dev
Operating System: GNU/Linux
_______________________________________________________
Details:
When Octave is built with support for 64-bit indexed Fortran arrays, the psi
function returns a lot of wrong results on real inputs and fails its tests.
>> psi (1, 0.5)
ans = -Inf
The problem occurs in the Fortran routines DPSIFN and PSIFN (the initial value
of ierr doesn't matter):
Breakpoint 1, dpsifn (x=0.5, n=1, kode=1, m=1, ans=..., nz=0,
ierr=140289603415448)
(gdb) finish
3366 F77_XFCN (dpsifn, DPSIFN, (z, n, 1, 1, ans, flag, t_ierr));
(gdb) p t_ierr
$3 = 2
IERR = 2 indicates an overflow occurred in the routine. So even though the
only thing different is the size of the INTEGER variable type, something in
these routines is calculating an overflow differently than when built with
32-bit integers.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?51966>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [Octave-bug-tracker] [bug #51966] psi function wrong when built with 64-bit Fortran indexing,
Mike Miller <=