Re: version of gsl

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 9, 2022 at 5:08 PM Patrick Dupre <pdupre@xxxxxxx> wrote:
Hello,

You pointed my parameters controlling the integration.
However, the integration provide the "correct" values
712 times, and fails the 713th time,
while the function to integrate is the same, but with a slight
change in a numeric value which is not singular as much as I can see.
I already checked my parameters, to optimize the
accuracy of the integrations, as well as the required CPU time.
>From that, I think that my set of parameters is OK.

In my opinion, if one integration controlling parameter is incorrect, the
gsl function must return an error (status) and not fails.
That way I could really control the parameters, and investigate.

Calculating thousands of integrations is not possible if
the algorithm fails without options of monitoring what could be wrong.

Advanced quadrature algorithms estimate errors at each step.  For most
software. error estimates neglect the limitations of floating point arithmetic,
so things like underflow to zero aren't taken into account.   My career has
involved calculations using observational data.   I was moved into a group
doing remote sensing where millions of calculations were done for each
month's data, for periods of 3 to 20 years.  The software was initially developed
using shop-based observations.  Since ships encounter only a small fraction
of the conditions that can be picked up in remote sensing images, calculations
were constantly aborting due to failures in some numerical subroutine that
had only been tested with the ship data. 

Most of the work was done in SGI IRIX64 using Fortran.  I used the SLATEC
xerror library, which allows you to report errors and store a count for each type
of error.  When a numerical routine reports a failure, the failure is logged, a failure
code replaces the result, and the calculation moves to the next iteration.   This
provides a set of test data that triggers each error and can be used to create
small test programs. 

I spent several years tracking down and working around the failures. In the
vast majority of cases the problems were due to sloppy coding by the
scientists who developed the theoretical approach.  In a few cases there were
bugs in a numerical library that were quickly fixed thanks to having test inputs
that trigger the error.

The software has been running reliably since the late 1990's and has produced identical
results as old hardware was replaced, but Moore's Law, improvements in the libraries, and
attention to optimizations means a decade of data can now be processed in days on a $5k
desktop instead of months on a $100k deskside..

--
George N. White III

_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux