From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29766 invoked by alias); 3 Jun 2009 14:32:17 -0000 Received: (qmail 29742 invoked by uid 22791); 3 Jun 2009 14:32:14 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-ew0-f212.google.com (HELO mail-ew0-f212.google.com) (209.85.219.212) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 03 Jun 2009 14:32:05 +0000 Received: by ewy8 with SMTP id 8so19420ewy.43 for ; Wed, 03 Jun 2009 07:32:02 -0700 (PDT) MIME-Version: 1.0 Received: by 10.216.70.204 with SMTP id p54mr337602wed.87.1244039520225; Wed, 03 Jun 2009 07:32:00 -0700 (PDT) From: Rhys Ulerich Date: Wed, 03 Jun 2009 14:32:00 -0000 Message-ID: <4a00655d0906030731l8632674o9abb33dca522e689@mail.gmail.com> Subject: Implementing hybrid explicit/implicit ODE stepper To: gsl-discuss@sourceware.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Mailing-List: contact gsl-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sourceware.org X-SW-Source: 2009-q2/txt/msg00010.txt.bz2 Hi all, I'm looking into implementing a hybrid explicit, implicit ODE integrator within the GSL ODE framework. This one splits the right hand side of u_t = f(u) into an implicit linear operator L(u) and an explicit nonlinear operator N(u). The scheme requires L(u) be available in a matrix or matrix-like form. What's the "right way" to shoehorn this into the gsl_odeiv_system struct (http://www.gnu.org/software/gsl/manual/html_node/Defining-the-ODE-System.html) ? L(u) as gsl_odeiv_system.function with N(u) passed within gsl_odeiv_system.params ? The reverse? Neither? Thanks, Rhys P.S. It's Spalart, Moser, & Rogers 1991 appendix A for anyone interested.