Return-Path: X-Original-To: apmail-commons-issues-archive@minotaur.apache.org Delivered-To: apmail-commons-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 35D887993 for ; Tue, 9 Aug 2011 13:52:53 +0000 (UTC) Received: (qmail 21827 invoked by uid 500); 9 Aug 2011 13:52:52 -0000 Delivered-To: apmail-commons-issues-archive@commons.apache.org Received: (qmail 21626 invoked by uid 500); 9 Aug 2011 13:52:51 -0000 Mailing-List: contact issues-help@commons.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: issues@commons.apache.org Delivered-To: mailing list issues@commons.apache.org Received: (qmail 21618 invoked by uid 99); 9 Aug 2011 13:52:51 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Aug 2011 13:52:51 +0000 X-ASF-Spam-Status: No, hits=-2000.8 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Aug 2011 13:52:48 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 53A89B3F07 for ; Tue, 9 Aug 2011 13:52:27 +0000 (UTC) Date: Tue, 9 Aug 2011 13:52:27 +0000 (UTC) From: "Gilles (JIRA)" To: issues@commons.apache.org Message-ID: <1752286119.20080.1312897947339.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <1824962433.1547.1311464949737.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (MATH-631) "RegulaFalsiSolver" failure MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/MATH-631?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081633#comment-13081633 ] Gilles commented on MATH-631: ----------------------------- Also: Phil, Could you please leave out dismissive qualifiers such as "pointless" and "pathetic" (and, elsewhere, "silly") and stick to more or less objective arguments? That will certainly help keep the conversation tone to a courteous level. Luc, Thanks for stating in full details what you meant by "convergence" in this case. However, it is still a "post-mortem" description. Do you really expect that the average user of the CM library (a.o. me and the original reporter of the issue) to be able to figure out that "obvious" explanation just by getting a "TooManyEvalutationsException", setting the along-x accuracy threshold to a ridiculously high value and still getting the same exception? If just for educational purposes, don't you think that it is more instructive to get a specific hint that the algorithm is stuck, rather than hit the ultimate fail-safe barrier much much later, and then download the source code and sprinkle the code with "println" statements to do forensic analysis? Phil, I tried to handle this issue out of respect for a real user who reported an issue that would have looked suspicious to many CM users. [How many of them would be experts in numerical analysis?] You do not do me a favour by removing this algorithm; I don't want it to be a _compromise_ (pathetic or not). If you prefer to keep it, I don't care anymore. But, in that case, _you_ should have answered to Axel Kramer to go and read some books on numerical analysis. > "RegulaFalsiSolver" failure > --------------------------- > > Key: MATH-631 > URL: https://issues.apache.org/jira/browse/MATH-631 > Project: Commons Math > Issue Type: Bug > Reporter: Gilles > Fix For: 3.0 > > > The following unit test: > {code} > @Test > public void testBug() { > final UnivariateRealFunction f = new UnivariateRealFunction() { > @Override > public double value(double x) { > return Math.exp(x) - Math.pow(Math.PI, 3.0); > } > }; > UnivariateRealSolver solver = new RegulaFalsiSolver(); > double root = solver.solve(100, f, 1, 10); > } > {code} > fails with > {noformat} > illegal state: maximal count (100) exceeded: evaluations > {noformat} > Using "PegasusSolver", the answer is found after 17 evaluations. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira