xref: /phasta/svLS/svLS_API_c.h (revision 712d3df0b59ebebaaeaea358162c8d2c043c6e08)
1*1e99f302SBen Matthews /*
2*1e99f302SBen Matthews  *--------------------------------------------------------------------
3*1e99f302SBen Matthews  *  This software is Copyright (c) 2012-2015 The Regents of the
4*1e99f302SBen Matthews  *  University of California. All Rights Reserved.
5*1e99f302SBen Matthews  *
6*1e99f302SBen Matthews  *  Permission to copy and modify this software and its documentation
7*1e99f302SBen Matthews  *  for educational, research and non-profit purposes, without fee,
8*1e99f302SBen Matthews  *  and without a written agreement is hereby granted, provided that
9*1e99f302SBen Matthews  *  the above copyright notice, this paragraph and the following three
10*1e99f302SBen Matthews  *  paragraphs appear in all copies.
11*1e99f302SBen Matthews  *
12*1e99f302SBen Matthews  *  Permission to make commercial use of this software may be obtained
13*1e99f302SBen Matthews  *  by contacting:
14*1e99f302SBen Matthews  *  Technology Transfer Office
15*1e99f302SBen Matthews  *  9500 Gilman Drive, Mail Code 0910
16*1e99f302SBen Matthews  *  University of California
17*1e99f302SBen Matthews  *  La Jolla, CA 92093-0910
18*1e99f302SBen Matthews  *  (858) 534-5815
19*1e99f302SBen Matthews  *  invent@ucsd.edu
20*1e99f302SBen Matthews  *
21*1e99f302SBen Matthews  *  This software program and documentation are copyrighted by The
22*1e99f302SBen Matthews  *  Regents of the University of California. The software program and
23*1e99f302SBen Matthews  *  documentation are supplied "as is", without any accompanying
24*1e99f302SBen Matthews  *  services from The Regents. The Regents does not warrant that the
25*1e99f302SBen Matthews  *  operation of the program will be uninterrupted or error-free. The
26*1e99f302SBen Matthews  *  end-user understands that the program was developed for research
27*1e99f302SBen Matthews  *  purposes and is advised not to rely exclusively on the program for
28*1e99f302SBen Matthews  *  any reason.
29*1e99f302SBen Matthews  *
30*1e99f302SBen Matthews  *  IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY
31*1e99f302SBen Matthews  *  PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
32*1e99f302SBen Matthews  *  DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS
33*1e99f302SBen Matthews  *  SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
34*1e99f302SBen Matthews  *  CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35*1e99f302SBen Matthews  *  THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY
36*1e99f302SBen Matthews  *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
37*1e99f302SBen Matthews  *  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
38*1e99f302SBen Matthews  *  SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE
39*1e99f302SBen Matthews  *  UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE
40*1e99f302SBen Matthews  *  MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
41*1e99f302SBen Matthews  *--------------------------------------------------------------------
42*1e99f302SBen Matthews  */
43*1e99f302SBen Matthews 
44*1e99f302SBen Matthews void svls_commu_create_(svLS_commuType *commu, int *commi);
45*1e99f302SBen Matthews void svls_commu_free_(svLS_commuType *commu);
46*1e99f302SBen Matthews 
47*1e99f302SBen Matthews void svls_lhs_create_c_(void **lhs, svLS_commuType *commu, int *gnNo, int *nNo, int *nnz, int *gNodes, int *rowPtr, int *colPtr, int *nFaces);
48*1e99f302SBen Matthews void svls_lhs_free_(void *lhs);
49*1e99f302SBen Matthews 
50*1e99f302SBen Matthews void svls_ls_create_(svLS_lsType *ls, int *LS_type, double *relTol, double *absTol, int *maxItr, int *dimKry, double *relTolIn, double *absTolIn, int *maxItrIn);
51*1e99f302SBen Matthews void svls_ls_free_(svLS_lsType *ls);
52*1e99f302SBen Matthews 
53*1e99f302SBen Matthews void svls_bc_create_(void *lhs, int *faIn, int *nNo, int *dof, int *BC_type, int *gNodes, double *Val);
54*1e99f302SBen Matthews void svls_bc_free_(void *lhs, int *faIn);
55*1e99f302SBen Matthews 
56*1e99f302SBen Matthews void svls_solve_(void *lhs, svLS_lsType *ls, int *dof, double *Ri, double *Val, int *incL, double *res);
57