cpodes_band.h

Go to the documentation of this file.
00001 /*
00002  * -----------------------------------------------------------------
00003  * $Revision: 1.3 $
00004  * $Date: 2006/11/29 00:05:05 $
00005  * ----------------------------------------------------------------- 
00006  * Programmer: Radu Serban @ LLNL
00007  * -----------------------------------------------------------------
00008  * Copyright (c) 2006, The Regents of the University of California.
00009  * Produced at the Lawrence Livermore National Laboratory.
00010  * All rights reserved.
00011  * For details, see the LICENSE file.
00012  * -----------------------------------------------------------------
00013  * This is the header file for the CPODES band linear solver, CPBAND.
00014  * -----------------------------------------------------------------
00015  */
00016 
00017 #ifndef _CPBAND_H
00018 #define _CPBAND_H
00019 
00020 #ifdef __cplusplus  /* wrapper to enable C++ usage */
00021 extern "C" {
00022 #endif
00023 
00024 #include <cpodes/cpodes_direct.h>
00025 #include <sundials/sundials_band.h>
00026 
00027 /*
00028  * -----------------------------------------------------------------
00029  * Function : CPBand
00030  * -----------------------------------------------------------------
00031  * A call to the CPBand function links the main CPODES integrator
00032  * with the CPBAND linear solver.
00033  *
00034  * cpode_mem is the pointer to the integrator memory returned by
00035  *           CPodeCreate.
00036  *
00037  * N is the size of the ODE system.
00038  *
00039  * mupper is the upper bandwidth of the band Jacobian
00040  *        approximation.
00041  *
00042  * mlower is the lower bandwidth of the band Jacobian
00043  *        approximation.
00044  *
00045  * The return value of CPBand is one of:
00046  *    CPDIRECT_SUCCESS   if successful
00047  *    CPDIRECT_MEM_NULL  if the CPODES memory was NULL
00048  *    CPDIRECT_MEM_FAIL  if there was a memory allocation failure
00049  *    CPDIRECT_ILL_INPUT if a required vector operation is missing
00050  *                       or if a bandwidth has an illegal value.
00051  * -----------------------------------------------------------------
00052  */
00053 
00054 SUNDIALS_EXPORT int CPBand(void *cpode_mem, int N, int mupper, int mlower);
00055 
00056 #ifdef __cplusplus
00057 }
00058 #endif
00059 
00060 #endif

Generated on Wed Dec 30 11:04:32 2009 for SimTKcore by  doxygen 1.6.1