You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
scipy.integrate and scipy.special both have modules d1mach.f and r1mach.f that check whether they're running on Cray, Convex, IBM and VAX machines that probable no-one has ever ported SciPy to. The code can be easily trimmed down to handle IEEE floats only, but it would be even better (IMHO) to rewrite these modules in a few lines of C; the relevant values are macros in <float.h> and the C code is actually given in comments. I would do this myself if I knew who to call C from Fortran.
The text was updated successfully, but these errors were encountered:
Calling C from Fortran77: http://hpc.ucla.edu/hoffman2/software/c-fortran-interop.php
It's not possible to write Fortran77-compatible FUNCTIONs in C, only SUBROUTINEs work reasonably portably, so the d1mach.f and r1mach.f files cannot be completely removed, just the contents of the functions replaced.
(But this is probably a fairly low-priority maintenance problem in any case.)
Might be easier to use compiler intrinsics, which are available in Fortran 90 and above (huge, tiny, spacing).
(Assuming that we'll be able to move on from f77 at some point, that is.)
scipy.integrate
andscipy.special
both have modulesd1mach.f
andr1mach.f
that check whether they're running on Cray, Convex, IBM and VAX machines that probable no-one has ever ported SciPy to. The code can be easily trimmed down to handle IEEE floats only, but it would be even better (IMHO) to rewrite these modules in a few lines of C; the relevant values are macros in<float.h>
and the C code is actually given in comments. I would do this myself if I knew who to call C from Fortran.The text was updated successfully, but these errors were encountered: