# Package lis-doc

Developer documentation for lis

http://www.ssisc.org/lis/index.en.html

Lis, a Library of Iterative Solvers for linear systems, is a scalable parallel
library for solving systems of linear equations and standard eigenvalue
problems with real sparse matrices using iterative methods.

This package contains the developer documentation for lis.

Version: 2.0.21

## Library Functions

lis library of iterative solvers for linear systems
lis_array_abs get the absolute values of the elements of the vector
lis_array_abs.3f get the absolute values of the elements of the vector
lis_array_axpy calculate the sum of the vectors
lis_array_axpy.3f calculate the sum of the vectors
lis_array_axpyz calculate the sum of the vectors
lis_array_axpyz.3f calculate the sum of the vectors
lis_array_cgs calculate the QR factorization with the classical Gram-Schmidt process
lis_array_cgs.3f calculate the QR factorization with the classical Gram-Schmidt process
lis_array_copy copy the values of the vector elements
lis_array_copy.3f copy the values of the vector elements
lis_array_dot calculate the Hermitian inner product of the vectors
lis_array_dot.3f calculate the Hermitian inner product of the vectors
lis_array_ge calculate the inverse of the matrix with the Gaussian elimination
lis_array_ge.3f calculate the inverse of the matrix with the Gaussian elimination
lis_array_matmat calculate the matrix-matrix product
lis_array_matmat.3f calculate the matrix-matrix product
lis_array_matmat_ns calculate the matrix-matrix product
lis_array_matmat_ns.3f calculate the matrix-matrix product
lis_array_matvec calculate the matrix vector product
lis_array_matvec.3f calculate the matrix vector product
lis_array_matvec_ns calculate the matrix vector product
lis_array_matvec_ns.3f calculate the matrix vector product
lis_array_matvect calculate the matrix vector product
lis_array_matvect.3f calculate the matrix vector product
lis_array_mgs calculate the QR factorization with the modified Gram-Schmidt process
lis_array_mgs.3f calculate the QR factorization with the modified Gram-Schmidt process
lis_array_nrm1 calculate the 1-norm of the vector
lis_array_nrm1.3f calculate the 1-norm of the vector
lis_array_nrm2 calculate the 2-norm of the vector
lis_array_nrm2.3f calculate the 2-norm of the vector
lis_array_nrmi calculate the infinity norm of the vector
lis_array_nrmi.3f calculate the infinity norm of the vector
lis_array_pdiv divide each element of a vector by the corresponding element of another
lis_array_pdiv.3f divide each element of a vector by the corresponding of another
lis_array_pmul multiply each element of a vector by the corresponding element of another
lis_array_pmul.3f multiply each element of a vector by the corresponding of another
lis_array_qr calculate the eigenvalues with the QR algorithm
lis_array_qr.3f calculate the eigenvalues with the QR algorithm
lis_array_reciprocal get the reciprocal values of the elements of the vector
lis_array_reciprocal.3f get the reciprocal values of the elements of the vector
lis_array_scale multiply the vector by the scalar
lis_array_scale.3f multiply the vector by the scalar
lis_array_set_all assign the value to the elements of the vector
lis_array_set_all.3f assign the value to the elements of the vector
lis_array_shift get the shifted values of the elements of the vector
lis_array_shift.3f get the shifted values of the elements of the vector
lis_array_solve solve the linear equation with the direct method
lis_array_solve.3f solve the linear equation with the direct method
lis_array_sum calculate the sum of the elements of the vector
lis_array_sum.3f calculate the sum of the elements of the vector
lis_array_swap swap the values of the vector elements
lis_array_swap.3f swap the values of the vector elements
lis_array_xpay calculate the sum of the vectors
lis_array_xpay.3f calculate the sum of the vectors
lis_esolve solve the standard eigenvalue problem
lis_esolve.3f solve the standard eigenvalue problem
lis_esolver_create create the eigensolver
lis_esolver_create.3f create the eigensolver
lis_esolver_destroy destroy the eigensolver
lis_esolver_destroy.3f destroy the eigensolver
lis_esolver_get_esolver get the eigensolver number from the eigensolver
lis_esolver_get_esolver.3f get the eigensolver number from the eigensolver
lis_esolver_get_esolvername get the eigensolver name from the eigensolver number
lis_esolver_get_esolvername.3f get the eigensolver name from the eigensolver number
lis_esolver_get_evalues get all the eigenvalues from the eigensolver
lis_esolver_get_evalues.3f get all the eigenvalues from the eigensolver
lis_esolver_get_evectors get all the eigenvectors from the eigensolver
lis_esolver_get_evectors.3f get all the eigenvectors from the eigensolver
lis_esolver_get_iter get the number of iterations for the specified eigenpair from the eigensolver
lis_esolver_get_iter.3f get the number of iterations for the specified eigenpair from the eigensolver
lis_esolver_get_iterex get the detailed information on the number of iterations for the specified eigenpair from the eigensolver
lis_esolver_get_iterex.3f get the detailed information on the number of iterations for the specified eigenpair from the eigensolver
lis_esolver_get_iters get the numbers of iterations for all the eigenpairs from the eigensolver
lis_esolver_get_iters.3f get the numbers of iterations for all the eigenpairs from the eigensolver
lis_esolver_get_residualnorm get the relative residual norm for the specified eigenpair from the eigensolver
lis_esolver_get_residualnorm.3f calculate the relative residual norm from the eigenvector
lis_esolver_get_residualnorms Get the relative residual norm for all the eigenpairs from the eigensolver
lis_esolver_get_residualnorms.3f get the relative residual norms for all the eigenpairs from the eigensolver
lis_esolver_get_rhistory Get the residual history for the specified eigenpair from the eigensolver
lis_esolver_get_rhistory.3f get the residual history for the specified eigenpair from the eigensolver
lis_esolver_get_status get the status for the specified eigenpair from the eigensolver
lis_esolver_get_status.3f get the status for the specified eigenpair from the eigensolver
lis_esolver_get_time get the execution time for the specified eigenpair from the eigensolver
lis_esolver_get_time.3f get the execution time for the specified eigenpair from the eigensolver
lis_esolver_get_timeex get the detailed information on the execution time for the specified eigenpair from the eigensolver
lis_esolver_get_timeex.3f get the detailed information on the execution time for the specified eigenpair from the eigensolver
lis_esolver_set_option set the options for the eigensolver
lis_esolver_set_option.3f set the options for the eigensolver
lis_esolver_set_optionC set the options for the eigensolver on the command line
lis_esolver_set_optionC.3f set the options for the eigensolver on the command line
lis_finalize finalize the execution environment
lis_finalize.3f finalize the execution environment
lis_initialize initialize the execution environment
lis_initialize.3f initialize the execution environment
lis_input read the matrix and vector data
lis_input.3f read the matrix and vector data
lis_matrix_assemble assemble the matrix into the specified storage format
lis_matrix_assemble.3f assemble the matrix into the specified storage format
lis_matrix_axpy calculate the sum of the matrices
lis_matrix_axpy.3f calculate the sum of the matrices
lis_matrix_axpyz calculate the sum of the matrices
lis_matrix_axpyz.3f calculate the sum of the matrices
lis_matrix_convert convert the matrix format
lis_matrix_convert.3f convert the matrix format
lis_matrix_copy copy the values of the matrix elements
lis_matrix_copy.3f copy the values of the matrix elements
lis_matrix_create create the matrix
lis_matrix_create.3f create the matrix
lis_matrix_destroy destroy the matrix
lis_matrix_destroy.3f destroy the matrix
lis_matrix_duplicate duplicate the matrix
lis_matrix_duplicate.3f duplicate the matrix
lis_matrix_get_diagonal Get the digonal elemments of the matrix
lis_matrix_get_diagonal.3f get the digonal elemments of the matrix
lis_matrix_get_nnz get the number of nonzero elements of the matrix
lis_matrix_get_nnz.3f get the number of nonzero elements of the matrix
lis_matrix_get_range get the location of the partial matrix in the global matrix
lis_matrix_get_range.3f get the location of the partial matrix in the global matrix
lis_matrix_get_size get the size of the matrix
lis_matrix_get_size.3f get the size of the matrix
lis_matrix_get_type get the storage format
lis_matrix_get_type.3f get the storage format
lis_matrix_malloc allocate the memory for the matrix
lis_matrix_malloc.3f allocate the memory for the matrix
lis_matrix_scale scale the matrix
lis_matrix_scale.3f scale the matrix
lis_matrix_set_blocksize assign the block size of the matrix
lis_matrix_set_blocksize.3f assign the block size of the matrix
lis_matrix_set_bsc associate the arrays in the BSC format with the matrix
lis_matrix_set_bsc.3f associate the arrays in the BSC format with the matrix
lis_matrix_set_bsr associate the arrays in the BSR format with the matrix
lis_matrix_set_bsr.3f associate the arrays in the BSR format with the matrix
lis_matrix_set_coo associate the arrays in the COO format with the matrix
lis_matrix_set_coo.3f associate the arrays in the COO format with the matrix
lis_matrix_set_csc associate the arrays in the CSC format with the matrix
lis_matrix_set_csc.3f associate the arrays in the CSC format with the matrix
lis_matrix_set_csr associate the arrays in the CSR format with the matrix
lis_matrix_set_csr.3f associate the arrays in the CSR format with the matrix
lis_matrix_set_dia associate the arrays in the DIA format with the matrix
lis_matrix_set_dia.3f associate the arrays in the DIA format with the matrix
lis_matrix_set_dns associate the arrays in the DNS format with the matrix
lis_matrix_set_dns.3f associate the arrays in the DNS format with the matrix
lis_matrix_set_ell associate the arrays in the ELL format with the matrix
lis_matrix_set_ell.3f associate the arrays in the ELL format with the matrix
lis_matrix_set_msr associate the arrays in the MSR format with the matrix
lis_matrix_set_msr.3f associate the arrays in the MSR format with the matrix
lis_matrix_set_size assign the size of the matrix
lis_matrix_set_size.3f assign the size of the matrix
lis_matrix_set_type assign the storage format
lis_matrix_set_type.3f assign the storage format
lis_matrix_set_value assign the scalar value to the element of the matrix
lis_matrix_set_value.3f assign the scalar value to the element of the matrix
lis_matrix_set_vbr associate the arrays in the VBR format with the matrix
lis_matrix_set_vbr.3f associate the arrays in the VBR format with the matrix
lis_matrix_shift_diagonal shift the digonal elemments of the matrix
lis_matrix_shift_diagonal.3f shift the digonal elemments of the matrix
lis_matrix_unset unassociate the arrays from the matrix
lis_matrix_unset.3f unassociate the arrays from the matrix
lis_matrix_xpay calculate the sum of the matrices
lis_matrix_xpay.3f calculate the sum of the matrices
lis_matvec calculate the matrix vector product
lis_matvec.3f calculate the matrix vector product
lis_matvect calculate the matrix vector product
lis_matvect.3f calculate the matrix vector product
lis_output write the matrix and vector data
lis_output.3f write the matrix and vector data
lis_output_matrix write the matrix data
lis_output_matrix.3f write the matrix data
lis_output_vector write the vector data
lis_output_vector.3f write the vector data
lis_solve solve the linear equation
lis_solve.3f solve the linear equation
lis_solve_kernel solve the linear equation with the predefined preconditioner
lis_solve_kernel.3f solve the linear equation with the predefined preconditioner
lis_solver_create create the solver
lis_solver_create.3f create the solver
lis_solver_destroy destroy the solver
lis_solver_destroy.3f destroy the solver
lis_solver_get_iter get the number of iterations from the solver
lis_solver_get_iter.3f get the number of iterations from the solver
lis_solver_get_iterex get the detailed information on the number of iterations from the solver
lis_solver_get_iterex.3f get the detailed information on the number of iterations from the solver
lis_solver_get_precon get the preconditioner number from the solver
lis_solver_get_precon.3f get the preconditioner number from the solver
lis_solver_get_preconname get the preconditioner name from the preconditioner number
lis_solver_get_preconname.3f get the preconditioner name from the preconditioner number
lis_solver_get_residualnorm calculate the relative residual norm from the solution
lis_solver_get_residualnorm.3f calculate the relative residual norm from the solution
lis_solver_get_rhistory get the residual history of the solver
lis_solver_get_rhistory.3f get the residual history of the solver
lis_solver_get_solver get the solver number from the solver
lis_solver_get_solver.3f get the solver number from the solver
lis_solver_get_solvername get the solver name from the solver number
lis_solver_get_solvername.3f get the solver name from the solver number
lis_solver_get_status get the status from the solver
lis_solver_get_status.3f get the status from the solver
lis_solver_get_time get the execution time from the solver
lis_solver_get_time.3f get the execution time from the solver
lis_solver_get_timeex get the detailed information on the execution time from the solver
lis_solver_get_timeex.3f get the detailed information on the execution time from the solver
lis_solver_set_option set the options for the solver
lis_solver_set_option.3f set the options for the solver
lis_solver_set_optionC set the options for the solver on the command line
lis_solver_set_optionC.3f set the options for the solver on the command line
lis_vector_abs get the absolute values of the elements of the vector
lis_vector_axpy calculate the sum of the vectors
lis_vector_axpy.3f calculate the sum of the vectors
lis_vector_axpyz calculate the sum of the vectors
lis_vector_axpyz.3f calculate the sum of the vectors
lis_vector_copy copy the values of the vector elements
lis_vector_copy.3f copy the values of the vector elements
lis_vector_create create the vector
lis_vector_create.3f create the vector
lis_vector_destroy destroy the vector
lis_vector_destroy.3f destroy the vector
lis_vector_dot calculate the Hermitian inner product of the vectors
lis_vector_dot.3f calculate the Hermitian inner product of the vectors
lis_vector_duplicate duplicate the vector
lis_vector_duplicate.3f duplicate the vector
lis_vector_gather get the values of the vector
lis_vector_gather.3f get the values of the vector
lis_vector_get_range get the location of the partial vector in the global vector
lis_vector_get_range.3f get the location of the partial vector in the global vector
lis_vector_get_size get the size of the vector
lis_vector_get_size.3f get the size of the vector
lis_vector_get_value get the value of the row of the vector
lis_vector_get_value.3f get the value of the row of the vector
lis_vector_get_values get the values of the rows of the vector
lis_vector_get_values.3f get the values of the rows of the vector
lis_vector_nrm1 calculate the 1-norm of the vector
lis_vector_nrm1.3f calculate the 1-norm of the vector
lis_vector_nrm2 calculate the 2-norm of the vector
lis_vector_nrm2.3f calculate the 2-norm of the vector
lis_vector_nrmi calculate the infinity norm of the vector
lis_vector_nrmi.3f calculate the infinity norm of the vector
lis_vector_pdiv divide each element of a vector by the corresponding element of another
lis_vector_pmul multiply each element of a vector by the corresponding element of another
lis_vector_reciprocal get the reciprocal values of the elements of the vector
lis_vector_scale multiply the vector by the scalar
lis_vector_scale.3f multiply the vector by the scalar
lis_vector_scatter assign the values to the vector
lis_vector_scatter.3f assign the values to the vector
lis_vector_set_all assign the value to the elements of the vector
lis_vector_set_all.3f assign the value to the elements of the vector
lis_vector_set_size assign the size of the vector
lis_vector_set_size.3f assign the size of the vector
lis_vector_set_value assign the scalar value to the row of the vector
lis_vector_set_value.3f assign the scalar value to the row of the vector
lis_vector_set_values assign the scalar values to the rows of the vector
lis_vector_set_values.3f assign the scalar values to the rows of the vector
lis_vector_shift get the shifted values of the elements of the vector
lis_vector_sum calculate the sum of the elements of the vector
lis_vector_swap swap the values of the vector elements
lis_vector_xpay calculate the sum of the vectors
lis_vector_xpay.3f calculate the sum of the vectors
lis_wtime measure the elapsed time
lis_wtime.3f measure the elapsed time