The following are the common parameters that are used when calling functions. Note: Variables names are consistent with itpack to prevent confusion.
nn Order of linear system a Row pointers used in compressed row storage format m ja Column indices used in compressed row storage format
| a | Nonzero entries in compressed row storage format | |
| rhs | Right hand side of linear system | |
| u | Initial guess of solution. holds solution on output | |
| iwksp | Vector of length 3*nn. on output: holds permutation vector, its inverse, and integer workspace | |
| nw | On input: length of wksp, on output: actual amount used | |
| wksp | Vector used for real working space. must be at least nw in length | |
| iparm | Vector of length 12 used to initialize various parameters on input | |
| rparm | Vector of length 12 used to initialize various parameters on input | |
| ierr | Error flag, on output: zero=no error, non-zero=error condition | |
| nz | Number of non-zero entries in matrix | |
| iwork | Vector of length nz. matrix creation workspace | |
| i | Matrix index | |
| j | Matrix index | |
| value | Matrix entry | |
| mode | Type of matrix building | |
| level | Error reporting flag | |
| nout | Error reporting location | |
| ier | Error flag for matrix building |
Definition in file itpack.h.
Go to the source code of this file.
Function which uses a bisection search to find the entry j in the array k such that the value l is greater than or equal to k[j] and strictly less than k[j+1]
| n | since of array | |
| k | integer array to search | |
| l | searching criterion |
| doublereal cheby_ | ( | doublereal * | qa, | |
| doublereal * | qt, | |||
| doublereal * | rrr, | |||
| integer * | ip, | |||
| doublereal * | cme, | |||
| doublereal * | sme | |||
| ) |
Computes the solution to the chebyshev equation
| qa | ratio of pseudo-residuals | |
| qt | virtual spectral radius | |
| rrr | adaptive parameter | |
| ip | number of iterations since last change of parameters | |
| cme | estimate for largest eigen-value of iteration matrix | |
| sme | estimate for smallest eigen-value of iteration matrix |
| int chgcon_ | ( | doublereal * | tri, | |
| doublereal * | gamold, | |||
| doublereal * | rhoold, | |||
| integer * | ibmth | |||
| ) |
Computes estimate for largest eigenvalue for conjugate gradient acceleration
| tri | tridiagonal matrix associated with the eigenvalues of the conjugate gradient polynomial | |
| gamold | previous value of acceleration parameters | |
| rhoold | previous value of acceleration parameters | |
| ibmth | flag indicating method being accelerated by conjugate gradient 1 - jacobian 2 - reduced system 3 - ssor |
| int chgsi_ | ( | doublereal * | dtnrm, | |
| integer * | ibmth | |||
| ) |
Computes new chebyshev acceleration parameters adaptively
| dtnrm | numerator or rayleigh quotient | |
| ibmth | indicator of basic method being accelerated by si 1 = jacobi 2 = reduced system 3 = symmetric sor |
| logical chgsme_ | ( | doublereal * | oldnrm, | |
| integer * | icnt | |||
| ) |
Tests for jacobi si whether sme should be changed when caseII = false if the test is positive, the new value of sme is computed
| oldnrm | square of the norm of the pseudo-residual at the last iteration | |
| icnt | number of iterations since last change of parameters |
| int daxpy_ | ( | integer * | n, | |
| doublereal * | da, | |||
| doublereal * | dx, | |||
| integer * | incx, | |||
| doublereal * | dy, | |||
| integer * | incy | |||
| ) |
Overwrite double precision dy with double precision da*dx + dy
| n | length of da | |
| da | array of da values | |
| dx | array of dx values | |
| incx | increment size for dx array | |
| dy | array of dy values | |
| incy | increment size for dy array |
| int dcopy_ | ( | integer * | n, | |
| doublereal * | dx, | |||
| integer * | incx, | |||
| doublereal * | dy, | |||
| integer * | incy | |||
| ) |
Copy dx to dy
| n | length of dx | |
| dx | array of values | |
| incx | increment size for dx array | |
| dy | array of values | |
| incy | increment size for dy array |
| doublereal ddot_ | ( | integer * | n, | |
| doublereal * | dx, | |||
| integer * | incx, | |||
| doublereal * | dy, | |||
| integer * | incy | |||
| ) |
Returns dot product of dx and dy
| n | length of dx | |
| dx | array of values | |
| incx | increment size for dx array | |
| dy | array of values | |
| incy | increment size for dy array |
| doublereal determ_ | ( | integer * | n, | |
| doublereal * | tri, | |||
| doublereal * | xlmda | |||
| ) |
Subroutine that computes the determinant of a symmetric tridiagonal matrix given by tri. det(tri - xlmda*i) = 0
| n | order of tridiagonal system | |
| tri | symmetric tridiagonal matrix of order n | |
| xlmda | argument for characteristic equation |
| int dfault_ | ( | integer * | iparm, | |
| doublereal * | rparm | |||
| ) |
Obtain default parameters
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters |
| int echall_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | icall | |||
| ) |
This routine initializes the itpack common blocks from the information contained in IPARM and RPARM. echall_ also prints the values of all the parameters in IPARM and RPARM
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| iparm | integer array of parameters | |
| rparm | doublereal array of parameters | |
| icall | indicator of which parameters are being printed |
| int echout_ | ( | integer * | iparm, | |
| doublereal * | rparm, | |||
| integer * | imthd | |||
| ) |
This routine initiazes the itpack common blocks from IPARM and RPARM
| iparm | integer array of parameters | |
| rparm | doublereal array of parameters | |
| imthd | indicator of method 1 = jcg 2 = jsi 3 = sor 4 = ssorcg 5 = ssorsi 6 = rscg 7 = rssi |
| doublereal eigvns_ | ( | integer * | n, | |
| doublereal * | tri, | |||
| doublereal * | d__, | |||
| doublereal * | e2, | |||
| integer * | ier | |||
| ) |
Computes the largest eigenvalue of symmetric tridiagnoncal matrix for conjugate gradient acceleration
| n | order of tridiagonal system | |
| tri | symmetric tridiagonal matrix of order n | |
| d__ | array of eqrt1s (negative diagonal elements) | |
| e2 | array of eqrt1s (super diagonal elements) | |
| ier | error flag (0 = success) |
| doublereal eigvss_ | ( | integer * | n, | |
| doublereal * | tri, | |||
| doublereal * | start, | |||
| doublereal * | zeta, | |||
| integer * | itmax, | |||
| integer * | ier | |||
| ) |
Computes the largest eigenvalue of a symmetric tridiagonal matrix for conjugate gradient acceleration modified imsl routine zbrent is used
| n | order of tridiagonal system | |
| tri | symmetric tridiagonal matrix of order n | |
| start | initial lower bound of interval containing root | |
| zeta | stopping criteria | |
| itmax | maximum number of iterations | |
| ier | error flag (0 = success) |
| int eqrt1s_ | ( | doublereal * | d__, | |
| doublereal * | e2, | |||
| integer * | nn, | |||
| integer * | m, | |||
| integer * | isw, | |||
| integer * | ierr | |||
| ) |
Smallest or largest m eigenvalue of a symmetric tridiagonal matrix
| d__ | input vector of length n, contains diagonal elements of matrix the computed eigenvalues replace the first m components | |
| e2 | input vector of length n containing the squares of the off-diagonal elements of the matrix | |
| nn | order of the matrix | |
| m | number of smallest eigenvalues desired | |
| isw | positive definite flag (0 = not pd, 1 = pd) | |
| ierr | error flag (601 = interates not monotone increasing, 602 = not really pd) |
| integer ipstr_ | ( | doublereal * | omega | ) |
Finds the smallest integer, ipstr, greater than 5 such that ipstr * (omega-1)**(ipstr-1) <= 0.5
| omega | relaxation factor for sor method |
| int iterm_ | ( | integer * | nn, | |
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | wk, | |||
| integer * | imthdd | |||
| ) |
This routine produces teh iteration summary line at the end of each iteration if level = 5, the latest approx to the solution is printed
| nn | order of system | |
| a | iteration matrix | |
| u | solution estimate | |
| wk | work array of length nn | |
| imthdd | indicator of method 1 = jcg 2 = jsi 3 = sor 4 = ssorcg 5 = ssorsi 6 = rscg 7 = rssi |
| int itjcg_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | u1, | |||
| doublereal * | d__, | |||
| doublereal * | d1, | |||
| doublereal * | dtwd, | |||
| doublereal * | tri | |||
| ) |
Performs one iteration of the jacobian conjugate gradiant method
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| u | input version of solution vector | |
| u1 | value of solution vector at the end of the in-1 iteration, gets filled with newest estimate | |
| d__ | solution vector, gets filled with pseudo-residual vector after in iterations | |
| d1 | pseudo-residual vector after in-1 iterations, gets filled with newest pseudo-residual vector | |
| dtwd | used in computation of acceleration parameeter gamma and the pseudo-residual | |
| tri | stores the tridiagonal matrix associated with the eigenvalues of the conjugate gradient ploynomial |
| int itjsi_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | u1, | |||
| doublereal * | d__, | |||
| integer * | icnt | |||
| ) |
Performs one iteration of the jacobian semi-iteration method
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of linear system | |
| u | solution estimate at in iterations | |
| u1 | value of solution vector at the end of the in-1 iteration, gets filled with newest estimate | |
| d__ | solution vector, gets filled with pseudo-residual vector after in iterations | |
| icnt | number of iterations since last change in solution estimate |
| int itrscg_ | ( | integer * | n, | |
| integer * | nnb, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | ub, | |||
| doublereal * | ub1, | |||
| doublereal * | db, | |||
| doublereal * | db1, | |||
| doublereal * | wb, | |||
| doublereal * | tri | |||
| ) |
Performs one iteration of the reduced system conjugate gradient method
| n | Order of linear system | |
| nnb | Number of black points | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| ub | estimate for the solution of black points after in iterations | |
| ub1 | estimate for the solution of black points after in-1 iterations, filled with in+1 values | |
| db | pseudo-residual of black points after in iterations | |
| db1 | pseudo-residual of black points after in-1 iterations, filled with in+1 values | |
| wb | used in computation involving black vector | |
| tri | stores the tridiagonal matrix associated with the eigenvalues of the conjugate gradient ploynomial |
| int itrssi_ | ( | integer * | n, | |
| integer * | nnb, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | ub, | |||
| doublereal * | ub1, | |||
| doublereal * | db | |||
| ) |
Performs one iteration of the reduced system semi-iteration method
| n | Order of linear system | |
| nnb | Number of black points | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of linear system | |
| ub | estimate for the solution of black points after in iterations | |
| ub1 | pseudo-residual of black points after in-1 iterations, filled with in+1 values | |
| db | current residual |
| int itsor_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | wk | |||
| ) |
Performs one iteration of the successive overrelaxation method
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of linear system | |
| u | solution estimate array | |
| wk | work array of length nn |
| int itsrcg_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | u1, | |||
| doublereal * | c__, | |||
| doublereal * | c1, | |||
| doublereal * | d__, | |||
| doublereal * | dl, | |||
| doublereal * | wk, | |||
| doublereal * | tri | |||
| ) |
Performs one iteration of the symmetric successive overrelaxation conjugate gradient method
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of linear system | |
| u | solution estimate at in iterations, | |
| u1 | value of solution vector at the end of the in-1 iteration, gets filled with newest estimate | |
| c__ | forward residual after in iterations | |
| c1 | forward residual after in-1 iterations, filled with in+1 values | |
| d__ | used to compute backward pseudo-residual for current iteration | |
| dl | used in computation of acceleration parameters | |
| wk | work array of length nn | |
| tri | stores the tridiagonal matrix associated with the eigenvalues of the conjugate gradient ploynomial |
| int itsrsi_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | u1, | |||
| doublereal * | c__, | |||
| doublereal * | d__, | |||
| doublereal * | ctwd, | |||
| doublereal * | wk | |||
| ) |
Performs one iteration of the symmetric successive overrelaxation semi-iteration method
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of linear system | |
| u | solution estimate at in-1 iterations | |
| u1 | value of solution vector at the end of the in-1 iteration, gets filled with newest estimate | |
| c__ | used to compute forward pseudo-residual vector | |
| d__ | used to compute backward pseudo-residual vector | |
| ctwd | used in computation of acceleration parameters | |
| wk | work array of length nn |
Fill integer array with a value
| n | number of elements in array | |
| iv | pointer to integer array | |
| ival | value to fill array with |
| int jcg_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Jacobian conjugate gradient
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int jsi_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Jacobian semi-iteration
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int omeg_ | ( | doublereal * | dnrm, | |
| integer * | iflag | |||
| ) |
| logical omgchg_ | ( | integer * | ndummy | ) |
| logical omgstr_ | ( | integer * | ndummy | ) |
| int parcon_ | ( | doublereal * | dtnrm, | |
| doublereal * | c1, | |||
| doublereal * | c2, | |||
| doublereal * | c3, | |||
| doublereal * | c4, | |||
| doublereal * | gamold, | |||
| doublereal * | rhotmp, | |||
| integer * | ibmth | |||
| ) |
| int parsi_ | ( | doublereal * | c1, | |
| doublereal * | c2, | |||
| doublereal * | c3, | |||
| integer * | ibmth | |||
| ) |
| doublereal pbeta_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | v, | |||
| doublereal * | w1, | |||
| doublereal * | w2 | |||
| ) |
| int pbsor_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | rhs | |||
| ) |
| int permat_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| integer * | p, | |||
| integer * | newia, | |||
| integer * | isym, | |||
| integer * | level, | |||
| integer * | nout, | |||
| integer * | ierr | |||
| ) |
| int perror_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | w, | |||
| doublereal * | digtt1, | |||
| doublereal * | digtt2, | |||
| integer * | idgtts | |||
| ) |
| int pervec_ | ( | integer * | n, | |
| doublereal * | v, | |||
| integer * | p | |||
| ) |
| int pfsor1_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | rhs | |||
| ) |
| int pfsor_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | rhs | |||
| ) |
| int pjac_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | rhs | |||
| ) |
| int pmult_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | w | |||
| ) |
| int prbndx_ | ( | integer * | nn, | |
| integer * | nblack, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| integer * | p, | |||
| integer * | ip, | |||
| integer * | level, | |||
| integer * | nout, | |||
| integer * | ier | |||
| ) |
| int prsblk_ | ( | integer * | nnb, | |
| integer * | nnr, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | ur, | |||
| doublereal * | vb | |||
| ) |
| int prsred_ | ( | integer * | nnb, | |
| integer * | nnr, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | ub, | |||
| doublereal * | vr | |||
| ) |
| int pssor1_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | u, | |||
| doublereal * | rhs, | |||
| doublereal * | fr, | |||
| doublereal * | br | |||
| ) |
| int pstop_ | ( | integer * | n, | |
| doublereal * | u, | |||
| doublereal * | dnrm, | |||
| doublereal * | ccon, | |||
| integer * | iflag, | |||
| logical * | q1 | |||
| ) |
| doublereal pvtbv_ | ( | integer * | n, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | v | |||
| ) |
| int qsort_ | ( | integer * | nn, | |
| integer * | key, | |||
| doublereal * | data, | |||
| integer * | error | |||
| ) |
| int rscg_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Reduced system conjugate gradient
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int rssi_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Reduced system semi-iteration
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int sbagn_ | ( | integer * | n, | |
| integer * | nz, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| integer * | iwork, | |||
| integer * | levell, | |||
| integer * | noutt, | |||
| integer * | ierr | |||
| ) |
Convert compressed row matrix back to linked-list representation used for adding entires
| int sbelm_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| integer * | iw, | |||
| doublereal * | rw, | |||
| doublereal * | tol, | |||
| integer * | isym, | |||
| integer * | level, | |||
| integer * | nout, | |||
| integer * | ier | |||
| ) |
| int sbend_ | ( | integer * | nn, | |
| integer * | nz, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| integer * | iwork | |||
| ) |
Finalize matrix storage format
| nn | order of matrix | |
| nz | maximum number of non-zero values | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| iwork | workspace array used by itpack |
| int sbini_ | ( | integer * | nn, | |
| integer * | nz, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| integer * | iwork | |||
| ) |
Initialize sparse matrix storage
| nn | order of matrix | |
| nz | maximum number of non-zero values | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| iwork | workspace array used by itpack |
| int sbsij_ | ( | integer * | nn, | |
| integer * | nz, | |||
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| integer * | iwork, | |||
| integer * | ii, | |||
| integer * | jj, | |||
| doublereal * | vall, | |||
| integer * | mode, | |||
| integer * | levell, | |||
| integer * | noutt, | |||
| integer * | ierr | |||
| ) |
Insert entry into sparse matrix
| nn | order of matrix | |
| nz | maximum number of non-zero values | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| iwork | workspace array used by itpack | |
| ii | row index of value to add | |
| jj | column index of value to add | |
| vall | value to add | |
| mode | flag for type of adding to be done | |
| levell | specifier for level of output | |
| noutt | specifier for output | |
| ierr | holds error flag on return |
| int scal_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | d__, | |||
| integer * | level, | |||
| integer * | nout, | |||
| integer * | ier | |||
| ) |
| int sor_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Successive overrelaxation
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int ssorcg_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Symmetric successive overrelaxation conjugate gradient
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int ssorsi_ | ( | integer * | nn, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| integer * | iwksp, | |||
| integer * | nw, | |||
| doublereal * | wksp, | |||
| integer * | iparm, | |||
| doublereal * | rparm, | |||
| integer * | ierr | |||
| ) |
Symmetric successive overrelaxation semi-iteration
| nn | Order of linear system | |
| ia | array of row offsets | |
| ja | array of column indices | |
| a | array of matrix values | |
| rhs | array of right hand side of system | |
| u | solution array | |
| iwksp | int array used by itpack for calculations | |
| nw | size of iwskp and wksp | |
| wksp | double array used by itpack for calculations | |
| iparm | array of 12 integer parameters | |
| rparm | array of 12 double parameters | |
| ierr | holds error flag on return |
| int sum3_ | ( | integer * | n, | |
| doublereal * | c1, | |||
| doublereal * | x1, | |||
| doublereal * | c2, | |||
| doublereal * | x2, | |||
| doublereal * | c3, | |||
| doublereal * | x3 | |||
| ) |
| doublereal tau_ | ( | integer * | ii | ) |
| E_f timer_ | ( | v3p_netlib_real * | timdmy | ) |
| logical tstchg_ | ( | integer * | ibmth | ) |
| int unscal_ | ( | integer * | n, | |
| integer * | ia, | |||
| integer * | ja, | |||
| doublereal * | a, | |||
| doublereal * | rhs, | |||
| doublereal * | u, | |||
| doublereal * | d__ | |||
| ) |
| int vevmw_ | ( | integer * | n, | |
| doublereal * | v, | |||
| doublereal * | w | |||
| ) |
| int vevpw_ | ( | integer * | n, | |
| doublereal * | v, | |||
| doublereal * | w | |||
| ) |
| int vfill_ | ( | integer * | n, | |
| doublereal * | v, | |||
| doublereal * | val | |||
| ) |
Fill all entires of nn-sized array u with value
| n | size of array | |
| v | array | |
| val | value to fill array with |
| int vout_ | ( | integer * | n, | |
| doublereal * | v, | |||
| integer * | iswt, | |||
| integer * | noutt | |||
| ) |
| int wevmw_ | ( | integer * | n, | |
| doublereal * | v, | |||
| doublereal * | w | |||
| ) |
| int zbrent_ | ( | integer * | n, | |
| doublereal * | tri, | |||
| doublereal * | eps, | |||
| integer * | nsig, | |||
| doublereal * | aa, | |||
| doublereal * | bb, | |||
| integer * | maxfnn, | |||
| integer * | ier | |||
| ) |
1.5.5 written by Dimitri van Heesch,
© 1997-2000