00001 /* 00002 * ----------------------------------------------------------------- 00003 * $Revision: 1.3 $ 00004 * $Date: 2006/11/29 00:05:07 $ 00005 * ----------------------------------------------------------------- 00006 * Programmer(s): Radu Serban @ LLNL 00007 * ----------------------------------------------------------------- 00008 * Copyright (c) 2002, 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 KINSOL dense linear solver module, 00014 * KINDENSE. 00015 * ----------------------------------------------------------------- 00016 */ 00017 00018 #ifdef __cplusplus /* wrapper to enable C++ usage */ 00019 extern "C" { 00020 #endif 00021 00022 #ifndef _KINDENSE_H 00023 #define _KINDENSE_H 00024 00025 #include <kinsol/kinsol_direct.h> 00026 #include <sundials/sundials_dense.h> 00027 00028 /* 00029 * ----------------------------------------------------------------- 00030 * Function : KINDense 00031 * ----------------------------------------------------------------- 00032 * A call to the KINDense function links the main solver with the 00033 * KINDENSE linear solver. Its arguments are as follows: 00034 * 00035 * kinmem - pointer to an internal memory block allocated during a 00036 * prior call to KINCreate 00037 * 00038 * N - problem size 00039 * 00040 * The return value of KINDense is one of: 00041 * KINDIRECT_SUCCESS if successful 00042 * KINDIRECT_MEM_NULL if the kinsol memory was NULL 00043 * KINDIRECT_MEM_FAIL if there was a memory allocation failure 00044 * KINDIRECT_ILL_INPUT if a required vector operation is missing 00045 * ----------------------------------------------------------------- 00046 */ 00047 00048 SUNDIALS_EXPORT int KINDense(void *kinmem, int N); 00049 00050 #endif 00051 00052 #ifdef __cplusplus 00053 } 00054 #endif