home *** CD-ROM | disk | FTP | other *** search
/ vis-ftp.cs.umass.edu / vis-ftp.cs.umass.edu.tar / vis-ftp.cs.umass.edu / pub / Software / ASCENDER / ascendMar8.tar / UMass / Triangulate / include / array_utils.s < prev    next >
Text File  |  1995-04-13  |  4KB  |  169 lines

  1. #ifndef incl_array_utils_s
  2. #define incl_array_utils_s
  3. #include "cvar.h"
  4.  
  5.  
  6. FUNCTION_DECL ( char **alloca_matrix, (
  7.         int nrl,
  8.         int nrh,
  9.         int ncl,
  10.         int nch,
  11.         int entry_size,
  12.         char **m));
  13.  
  14. FUNCTION_DECL ( char **malloc_matrix, (
  15.         int nrl,
  16.         int nrh,
  17.         int ncl,
  18.         int nch,
  19.         int entry_size));
  20.  
  21. FUNCTION_DECL ( void fprint_intmatrix, (
  22.         char *format,
  23.         FILE *afile,
  24.         int **a,
  25.         int nrl,
  26.         int nrh,
  27.         int ncl,
  28.         int nch));
  29.  
  30. FUNCTION_DECL ( void fprint_shortmatrix, (
  31.         char *format,
  32.         FILE *afile,
  33.         short **a,
  34.         int nrl,
  35.         int nrh,
  36.         int ncl,
  37.         int nch));
  38.  
  39. FUNCTION_DECL ( void fprint_floatmatrix, (
  40.         char *format,
  41.         FILE *afile,
  42.         float **a,
  43.         int nrl,
  44.         int nrh,
  45.         int ncl,
  46.         int nch));
  47.  
  48. FUNCTION_DECL ( void fprint_doublematrix, (
  49.         char *format,
  50.         FILE *afile,
  51.         double **a,
  52.         int nrl,
  53.         int nrh,
  54.         int ncl,
  55.         int nch));
  56.  
  57. FUNCTION_DECL ( void fprint_matrix, (
  58.         char *format,
  59.         FILE *afile,
  60.         double **a,
  61.         int nrl,
  62.         int nrh,
  63.         int ncl,
  64.         int nch));
  65.  
  66. FUNCTION_DECL ( void print_matrix, (
  67.         FILE *afile,
  68.         double **a,
  69.         int nrl,
  70.         int nrh,
  71.         int ncl,
  72.         int nch));
  73.  
  74. FUNCTION_DECL ( void fprint_vector, (
  75.         char *format,
  76.         FILE *afile,
  77.         double *v,
  78.         int nrl,
  79.         int nrh));
  80.  
  81. FUNCTION_DECL ( void print_vector, (
  82.         FILE *afile,
  83.         double *v,
  84.         int nrl,
  85.         int nrh));
  86.  
  87. FUNCTION_DECL ( void matrix_prod, (
  88.         double **A,
  89.         double **B,
  90.         int l,
  91.         int m,
  92.         int n,
  93.         double **X));
  94.  
  95. FUNCTION_DECL ( void vector_matrix_prod, (
  96.         double *b,
  97.         double **A,
  98.         int l,
  99.         int m,
  100.         double *x));
  101.  
  102. FUNCTION_DECL ( void matrix_vector_prod, (
  103.         double **A,
  104.         double *b,
  105.         int l,
  106.         int m,
  107.         double *x));
  108.  
  109. FUNCTION_DECL ( double inner_product, (
  110.         double *A,
  111.         double *B,
  112.         int n));
  113.  
  114. FUNCTION_DECL ( double vector_length, (
  115.         double *A,
  116.         int n));
  117.  
  118. FUNCTION_DECL ( void transpose, (
  119.    double **A,        /* The matrix to be transposed */
  120.    double **At,        /* Its transpose (returned) */
  121.    int nrl, int nrh,    /* X dimension */
  122.    int ncl, int nch    /* Y dimension */
  123.    ));
  124.  
  125. FUNCTION_DECL ( int matrix_inverse, (
  126.    double **A,        /* The matrix to be inverted */
  127.    double **Ainv,    /* The inverse computed */
  128.    int n        /* Dimension of the matrix */
  129.    ));
  130.  
  131. FUNCTION_DECL ( char **sub_matrix, (
  132.    char **A,            /* Base array */
  133.    int nrl, int ncl,        /* Origin of the new array */
  134.    int rdim,            /* Number of rows of the sub-array */
  135.    int orgi, int orgj,        /* Starting index for new array */
  136.    int entry_size        /* Size of an entry */
  137.    ));
  138.  
  139. FUNCTION_DECL ( double det3x3, (
  140.         double **A));
  141.  
  142. FUNCTION_DECL ( void cofactor_matrix_3x3, (
  143.         double **A,
  144.         double **Aadj));
  145.  
  146. FUNCTION_DECL ( void matrix_copy, (
  147.    double **A, double **B,    /* The matrices to copy from and to */
  148.    int i0, int i1,        /* Row bounds */
  149.    int j0, int j1        /* Column bounds */
  150.    ));
  151.  
  152. FUNCTION_DECL ( void cross_product, (
  153.    double *A, double *B,    /* Two vectors 1..3 */
  154.    double *C            /* Their cross product */
  155.    ));
  156.  
  157. FUNCTION_DECL ( int lin_solve, (
  158.    double **A,        /* The matrix of coefficients */
  159.    double *x,        /* The vector of unknowns */
  160.    double *b,        /* The goal vector */
  161.    int n        /* Size of the system */
  162.    ));
  163.  
  164. FUNCTION_DECL ( void identity_matrix, (
  165.         double **A,
  166.         int dim));
  167.  
  168. #endif
  169.