Return-Path: X-Original-To: apmail-commons-dev-archive@www.apache.org Delivered-To: apmail-commons-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8CEED17EBA for ; Wed, 8 Oct 2014 03:19:26 +0000 (UTC) Received: (qmail 60247 invoked by uid 500); 8 Oct 2014 03:19:26 -0000 Delivered-To: apmail-commons-dev-archive@commons.apache.org Received: (qmail 60117 invoked by uid 500); 8 Oct 2014 03:19:26 -0000 Mailing-List: contact dev-help@commons.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Commons Developers List" Delivered-To: mailing list dev@commons.apache.org Received: (qmail 60106 invoked by uid 99); 8 Oct 2014 03:19:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Oct 2014 03:19:25 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: 209.85.216.49 is neither permitted nor denied by domain of hank@applieddefense.com) Received: from [209.85.216.49] (HELO mail-qa0-f49.google.com) (209.85.216.49) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Oct 2014 03:18:58 +0000 Received: by mail-qa0-f49.google.com with SMTP id f12so5113341qad.8 for ; Tue, 07 Oct 2014 20:18:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type; bh=7ne5nG7bWbKzeVCcEs3/YbCZRVUl2hyw51Go6iTXzDg=; b=U5qw5kZ3zcUckJq8VUqXy31FK+ocDBo4x6HoNKZB7McwcoNL+Ou4K6EFdQE9rVu65E gBwRgEPrBzi4bQjsr8+7XbAEka766mO9YYhdtD7y4+N2QhCclnp/FukZJxaoqqUMFEuS 3NuH+D4mwfkQnLcE+3xiinIfhH1yaNV0zdctx8rpIrqOp2jMF3E46xI/M69y/VAnTlhR RciuUhH3nV9xCo2YLLfOqOaRoFw1p+Nd9ssJZwk+epI/OIEdM9/TrtyldgGx1RFK3EQw 6tCkAuzGo3gNSMZXFn1+keIAib0kwhu0F23N3tjPJlISzW9Ai8/33wh0nOYhbD2/5zN4 Zb9A== X-Gm-Message-State: ALoCoQld5D7UAj5lBIAjInny7EOGdRs9J9lqToGcgGCl0+3iSMuwhC2Z0KyWGKO5ashfiVmeOcon MIME-Version: 1.0 X-Received: by 10.224.30.76 with SMTP id t12mr4077450qac.89.1412738337106; Tue, 07 Oct 2014 20:18:57 -0700 (PDT) Received: by 10.140.152.209 with HTTP; Tue, 7 Oct 2014 20:18:57 -0700 (PDT) Date: Tue, 7 Oct 2014 23:18:57 -0400 Message-ID: Subject: [math] Upgrading TricubicInterpolator object From: Hank Grabowski To: Commons Developers List Content-Type: multipart/alternative; boundary=047d7bea37c2be8f3f0504e0c6fa X-Virus-Checked: Checked by ClamAV on apache.org --047d7bea37c2be8f3f0504e0c6fa Content-Type: text/plain; charset=UTF-8 All, I've completed MATH-1138 ( BicubicSplineInterpolator is returning incorrect interpolated values ). It is generating substantially better values. I am using the Akima Spline algorithm that I added to the library (with unit tests). For the planar test the error off the truth function went from 6 to 6e-14. On the parabaloid function test it went from 224 to 6e-14. The corresponding errors on the Akima Spline test for linear, parabolic and cubic functions are 1e-15, 6e-14 and 3.8, respectively. While that is an improvement over the Natural Spline, that could have errors over 15 on the cubic test, the B-spline would collapse errors on the higher order functions to something comparable to the linear and parabolic tests, and thus further enhance the accuracy of the interpolation of the higher dimension interpolators too. However that should probably be another story as well since this answers the mail on the heart of the MATH-1138 problem. The TricubicSplineInterpolator needs fixing as well. The unit tests weren't actually running any accuracy tests. I would like to recode the Tricubic spline interpolator using the same piecewise methodology that I used on the BicubicSplineInterpolator. I would also like to update the unit tests so that they are performing the accuracy checks as well. So, the stories I would like to add to the Math Wish List and corresponding JIRA stories would be: 1. Add a sense of caching of interpolation functions for BicubicSplineInterpolator for bands that have already had the test function built. 2. Upgrade TricubicSplineInterpolator to achieve appropriate numerical accuracies and round out unit tests 3. Add a B-spline interpolator, with appropriate unit tests 4. Upgrade the BicubicSplineInterpolator to allow the user to select between interpolation methods (Natural, Akima and B-Spline) 5. Create a BiLinearInterpolator Is that amenable with everyone? Hank --047d7bea37c2be8f3f0504e0c6fa--