petsc-main 2021-04-20
Report Typos and Errors

MatMult

Computes the matrix-vector product, y = Ax.

Synopsis

#include "petscmat.h" 
PetscErrorCode MatMult(Mat mat,Vec x,Vec y)
Neighbor-wise Collective on Mat

Input Parameters

mat - the matrix
x - the vector to be multiplied

Output Parameters

y - the result

Notes

The vectors x and y cannot be the same. I.e., one cannot call MatMult(A,y,y).

See Also

MatMultTranspose(), MatMultAdd(), MatMultTransposeAdd()

Level

beginner

Location

src/mat/interface/matrix.c

Examples

src/mat/tutorials/ex2.c.html
src/mat/tutorials/ex9.c.html
src/ksp/pc/tutorials/ex3.c.html
src/ksp/ksp/tutorials/ex1.c.html
src/ksp/ksp/tutorials/ex2.c.html
src/ksp/ksp/tutorials/ex4.c.html
src/ksp/ksp/tutorials/ex5.c.html
src/ksp/ksp/tutorials/ex6.c.html
src/ksp/ksp/tutorials/ex7.c.html
src/ksp/ksp/tutorials/ex8.c.html
src/ksp/ksp/tutorials/ex9.c.html

Implementations

MatMult_HYPREStruct in src/dm/impls/da/hypre/mhyp.c
MatMult_HYPRESStruct in src/dm/impls/da/hypre/mhyp.c
MatMult_SeqUSFFT in src/dm/impls/da/usfft/matusfft.c
MatMult_MAmI in src/ksp/pc/impls/hara/pchara.cu
MatMult_Hyper in src/ksp/pc/impls/hara/pchara.cu
MatMult_NS in src/ksp/pc/impls/hara/pchara.cu
MatMult_ML in src/ksp/pc/impls/ml/ml.c
MatMult_MPIAIJKokkos in src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx
MatMult_MPIAIJ in src/mat/impls/aij/mpi/mpiaij.c
MatMult_MPIAIJCUSPARSE in src/mat/impls/aij/mpi/mpicusparse/mpiaijcusparse.cu
MatMult_SeqAIJ in src/mat/impls/aij/seq/aij.c
MatMult_SeqAIJMKL in src/mat/impls/aij/seq/aijmkl/aijmkl.c
MatMult_SeqAIJPERM in src/mat/impls/aij/seq/aijperm/aijperm.c
MatMult_SeqAIJSELL in src/mat/impls/aij/seq/aijsell/aijsell.c
MatMult_AIJCRL in src/mat/impls/aij/seq/crl/crl.c
MatMult_SeqAIJKokkos in src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx
MatMult_SeqAIJCUSPARSE in src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu
MatMult_SeqAIJViennaCL in src/mat/impls/aij/seq/seqviennacl/aijviennacl.cxx
MatMult_MPIBAIJ in src/mat/impls/baij/mpi/mpibaij.c
MatMult_BlockMat in src/mat/impls/blockmat/seq/blockmat.c
MatMult_ConstantDiagonal in src/mat/impls/cdiagonal/cdiagonal.c
MatMult_Composite in src/mat/impls/composite/mcomposite.c
MatMult_SeqCUFFT in src/mat/impls/cufft/cufft.cu
MatMult_MPIDense in src/mat/impls/dense/mpi/mpidense.c
MatMult_SeqDenseCUDA in src/mat/impls/dense/seq/cuda/densecuda.cu
MatMult_SeqDense in src/mat/impls/dense/seq/dense.c
MatMult_Elemental in src/mat/impls/elemental/matelem.cxx
MatMult_SeqFFTW in src/mat/impls/fft/fftw/fftw.c
MatMult_MPIFFTW in src/mat/impls/fft/fftw/fftw.c
MatMult_HARA in src/mat/impls/hara/mathara.cu
MatMult_HYPRE in src/mat/impls/hypre/mhypre.c
MatMult_IS in src/mat/impls/is/matis.c
MatMult_SeqKAIJ in src/mat/impls/kaij/kaij.c
MatMult_MPIKAIJ in src/mat/impls/kaij/kaij.c
MatMult_LRC in src/mat/impls/lrc/lrc.c
MatMult_MFFD in src/mat/impls/mffd/mffd.c
MatMult_Nest in src/mat/impls/nest/matnest.c
MatMult_Normal in src/mat/impls/normal/normm.c
MatMult_MPISBAIJ in src/mat/impls/sbaij/mpi/mpisbaij.c
MatMult_ScaLAPACK in src/mat/impls/scalapack/matscalapack.c
MatMult_Scatter in src/mat/impls/scatter/mscatter.c
MatMult_MPISELL in src/mat/impls/sell/mpi/mpisell.c
MatMult_SeqSELL in src/mat/impls/sell/seq/sell.c
MatMult_Shell in src/mat/impls/shell/shell.c
MatMult_CF in src/mat/impls/shell/shellcnv.c
MatMult_SubMatrix in src/mat/impls/submat/submat.c
MatMult_HT in src/mat/impls/transpose/htransm.c
MatMult_Transpose in src/mat/impls/transpose/transm.c

Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages