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
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD> <link rel="canonical" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Mat/MatCreateScatter.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>MatCreateScatter</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<div id="version" align=right><b>petsc-3.14.5 2021-03-03</b></div>
<div id="bugreport" align=right><a href="mailto:petsc-maint@mcs.anl.gov?subject=Typo or Error in Documentation &body=Please describe the typo or error in the documentation: petsc-3.14.5 v3.14.5 docs/manualpages/Mat/MatCreateScatter.html "><small>Report Typos and Errors</small></a></div>
<A NAME="MatCreateScatter"><H1>MatCreateScatter</H1></A>
Creates a new matrix based on a <A HREF="../Vec/VecScatter.html#VecScatter">VecScatter</A>
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscmat.h"
<A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A> <A HREF="../Mat/MatCreateScatter.html#MatCreateScatter">MatCreateScatter</A>(<A HREF="../Sys/MPI_Comm.html#MPI_Comm">MPI_Comm</A> comm,<A HREF="../Vec/VecScatter.html#VecScatter">VecScatter</A> scatter,<A HREF="../Mat/Mat.html#Mat">Mat</A> *A)
</PRE>
Collective
<P>
<H3><FONT COLOR="#CC3333">Input Parameters</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>comm </B></TD><TD>- MPI communicator
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>scatter </B></TD><TD>- a VecScatterContext
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">Output Parameter</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>A </B></TD><TD>- the matrix
</TD></TR></TABLE>
<P>
<P>
PETSc requires that matrices and vectors being used for certain
operations are partitioned accordingly. For example, when
creating a scatter matrix, A, that supports parallel matrix-vector
products using <A HREF="../Mat/MatMult.html#MatMult">MatMult</A>(A,x,y) the user should set the number
of local matrix rows to be the number of local elements of the
corresponding result vector, y. Note that this is information is
required for use of the matrix interface routines, even though
the scatter matrix may not actually be physically partitioned.
<P>
Developer Notes: This directly accesses information inside the <A HREF="../Vec/VecScatter.html#VecScatter">VecScatter</A> associated with the matrix-vector product
for this matrix. This is not desirable..
<P>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../Mat/MatScatterSetVecScatter.html#MatScatterSetVecScatter">MatScatterSetVecScatter</A>(), <A HREF="../Mat/MatScatterGetVecScatter.html#MatScatterGetVecScatter">MatScatterGetVecScatter</A>(), <A HREF="../Mat/MATSCATTER.html#MATSCATTER">MATSCATTER</A>
<BR><P><B></B><H3><FONT COLOR="#CC3333">Level</FONT></H3>intermediate<BR>
<H3><FONT COLOR="#CC3333">Location</FONT></H3>
</B><A HREF="../../../src/mat/impls/scatter/mscatter.c.html#MatCreateScatter">src/mat/impls/scatter/mscatter.c</A>
<BR><A HREF="./index.html">Index of all Mat routines</A>
<BR><A HREF="../../index.html">Table of Contents for all manual pages</A>
<BR><A HREF="../singleindex.html">Index of all manual pages</A>
</BODY></HTML>
|