00001 /* 00002 * ----------------------------------------------------------------- 00003 * $Revision: 1.4 $ 00004 * $Date: 2006/11/29 00:05:06 $ 00005 * ----------------------------------------------------------------- 00006 * Programmer(s): Radu Serban @ LLNL 00007 * ----------------------------------------------------------------- 00008 * Copyright (c) 2005, 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 dense linear solver CVSDENSE. 00014 * ----------------------------------------------------------------- 00015 */ 00016 00017 #ifndef _CVSDENSE_H 00018 #define _CVSDENSE_H 00019 00020 #ifdef __cplusplus /* wrapper to enable C++ usage */ 00021 extern "C" { 00022 #endif 00023 00024 #include <cvodes/cvodes_direct.h> 00025 #include <sundials/sundials_dense.h> 00026 00027 /* 00028 * ----------------------------------------------------------------- 00029 * Function: CVDense 00030 * ----------------------------------------------------------------- 00031 * A call to the CVDense function links the main integrator with 00032 * the CVSDENSE linear solver. 00033 * 00034 * cvode_mem is the pointer to the integrator memory returned by 00035 * CVodeCreate. 00036 * 00037 * N is the size of the ODE system. 00038 * 00039 * The return value of CVDense is one of: 00040 * CVDIRECT_SUCCESS if successful 00041 * CVDIRECT_MEM_NULL if the cvode memory was NULL 00042 * CVDIRECT_MEM_FAIL if there was a memory allocation failure 00043 * CVDIRECT_ILL_INPUT if a required vector operation is missing 00044 * ----------------------------------------------------------------- 00045 */ 00046 00047 SUNDIALS_EXPORT int CVDense(void *cvode_mem, int N); 00048 00049 /* 00050 * ----------------------------------------------------------------- 00051 * Function: CVDenseB 00052 * ----------------------------------------------------------------- 00053 * CVDenseB links the main CVODE integrator with the CVSDENSE 00054 * linear solver for the backward integration. 00055 * ----------------------------------------------------------------- 00056 */ 00057 00058 SUNDIALS_EXPORT int CVDenseB(void *cvadj_mem, int nB); 00059 00060 #ifdef __cplusplus 00061 } 00062 #endif 00063 00064 #endif