/usr/include/suitesparse/umfpack_report_vector.h is in libsuitesparse-dev 1:3.4.0-2ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | /* ========================================================================== */
/* === umfpack_report_vector ================================================ */
/* ========================================================================== */
/* -------------------------------------------------------------------------- */
/* UMFPACK Copyright (c) Timothy A. Davis, CISE, */
/* Univ. of Florida. All Rights Reserved. See ../Doc/License for License. */
/* web: http://www.cise.ufl.edu/research/sparse/umfpack */
/* -------------------------------------------------------------------------- */
int umfpack_di_report_vector
(
int n,
const double X [ ],
const double Control [UMFPACK_CONTROL]
) ;
UF_long umfpack_dl_report_vector
(
UF_long n,
const double X [ ],
const double Control [UMFPACK_CONTROL]
) ;
int umfpack_zi_report_vector
(
int n,
const double Xx [ ], const double Xz [ ],
const double Control [UMFPACK_CONTROL]
) ;
UF_long umfpack_zl_report_vector
(
UF_long n,
const double Xx [ ], const double Xz [ ],
const double Control [UMFPACK_CONTROL]
) ;
/*
double int Syntax:
#include "umfpack.h"
int n, status ;
double *X, Control [UMFPACK_CONTROL] ;
status = umfpack_di_report_vector (n, X, Control) ;
double UF_long Syntax:
#include "umfpack.h"
UF_long n, status ;
double *X, Control [UMFPACK_CONTROL] ;
status = umfpack_dl_report_vector (n, X, Control) ;
complex int Syntax:
#include "umfpack.h"
int n, status ;
double *Xx, *Xz, Control [UMFPACK_CONTROL] ;
status = umfpack_zi_report_vector (n, Xx, Xz, Control) ;
complex UF_long Syntax:
#include "umfpack.h"
UF_long n, status ;
double *Xx, *Xz, Control [UMFPACK_CONTROL] ;
status = umfpack_zl_report_vector (n, Xx, Xz, Control) ;
Purpose:
Verifies and prints a dense vector.
Returns:
UMFPACK_OK if Control [UMFPACK_PRL] <= 2 (the input is not checked).
Otherwise:
UMFPACK_OK if the vector is valid.
UMFPACK_ERROR_argument_missing if X or Xx is missing.
UMFPACK_ERROR_n_nonpositive if n <= 0.
Arguments:
Int n ; Input argument, not modified.
X is a real or complex vector of size n. Restriction: n > 0.
double X [n] ; Input argument, not modified. For real versions.
A real vector of size n. X must not be (double *) NULL.
double Xx [n or 2*n] ; Input argument, not modified. For complex versions.
double Xz [n or 0] ; Input argument, not modified. For complex versions.
A complex vector of size n, in one of two storage formats.
Xx must not be (double *) NULL.
If Xz is not (double *) NULL, then Xx [i] is the real part of X (i) and
Xz [i] is the imaginary part of X (i). Both vectors are of length n.
This is the "split" form of the complex vector X.
If Xz is (double *) NULL, then Xx holds both real and imaginary parts,
where Xx [2*i] is the real part of X (i) and Xx [2*i+1] is the imaginary
part of X (i). Xx is of length 2*n doubles. If you have an ANSI C99
compiler with the intrinsic double _Complex type, then Xx can be of
type double _Complex in the calling routine and typecast to (double *)
when passed to umfpack_*_report_vector (this is untested, however).
This is the "merged" form of the complex vector X.
Note that all complex routines in UMFPACK V4.4 and later use this same
strategy for their complex arguments. The split format is useful for
MATLAB, which holds its real and imaginary parts in seperate arrays.
The packed format is compatible with the intrinsic double _Complex
type in ANSI C99, and is also compatible with SuperLU's method of
storing complex matrices. In Version 4.3, this routine was the only
one that allowed for packed complex arguments.
double Control [UMFPACK_CONTROL] ; Input argument, not modified.
If a (double *) NULL pointer is passed, then the default control
settings are used. Otherwise, the settings are determined from the
Control array. See umfpack_*_defaults on how to fill the Control
array with the default settings. If Control contains NaN's, the
defaults are used. The following Control parameters are used:
Control [UMFPACK_PRL]: printing level.
2 or less: no output. returns silently without checking anything.
3: fully check input, and print a short summary of its status
4: as 3, but print first few entries of the input
5: as 3, but print all of the input
Default: 1
*/
|