File: MatCreateKAIJ.html

package info (click to toggle)
petsc 3.14.5%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 266,472 kB
  • sloc: ansic: 680,898; python: 33,303; cpp: 16,324; makefile: 14,022; f90: 13,731; javascript: 10,713; fortran: 9,581; sh: 1,373; xml: 619; objc: 445; csh: 192; pascal: 148; java: 13
file content (65 lines) | stat: -rw-r--r-- 4,185 bytes parent folder | download
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
55
56
57
58
59
60
61
62
63
64
65
<!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/MatCreateKAIJ.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>MatCreateKAIJ</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/MatCreateKAIJ.html "><small>Report Typos and Errors</small></a></div>
<A NAME="MatCreateKAIJ"><H1>MatCreateKAIJ</H1></A>
Creates a matrix type to be used for matrices of the following form: 
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscmat.h" 
<A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A>  <A HREF="../Mat/MatCreateKAIJ.html#MatCreateKAIJ">MatCreateKAIJ</A>(<A HREF="../Mat/Mat.html#Mat">Mat</A> A,<A HREF="../Sys/PetscInt.html#PetscInt">PetscInt</A> p,<A HREF="../Sys/PetscInt.html#PetscInt">PetscInt</A> q,const <A HREF="../Sys/PetscScalar.html#PetscScalar">PetscScalar</A> S[],const <A HREF="../Sys/PetscScalar.html#PetscScalar">PetscScalar</A> T[],<A HREF="../Mat/Mat.html#Mat">Mat</A> *kaij)
</PRE>
[I \otimes S + A \otimes T]
<P>
where
S is a dense (p \times q) matrix
T is a dense (p \times q) matrix
A is an AIJ  (n \times n) matrix
I is the identity matrix
The resulting matrix is (np \times nq)
<P>
S and T are always stored independently on all processes as <A HREF="../Sys/PetscScalar.html#PetscScalar">PetscScalar</A> arrays in column-major format.
<P>
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>A </B></TD><TD>- the AIJ matrix
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>p </B></TD><TD>- number of rows in S and T
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>q </B></TD><TD>- number of columns in S and T
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>S </B></TD><TD>- the S matrix (can be PETSC_NULL), stored as a <A HREF="../Sys/PetscScalar.html#PetscScalar">PetscScalar</A> array (column-major)
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>T </B></TD><TD>- the T matrix (can be PETSC_NULL), stored as a <A HREF="../Sys/PetscScalar.html#PetscScalar">PetscScalar</A> array (column-major)
</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>kaij </B></TD><TD>- the new KAIJ matrix
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
This function increases the reference count on the AIJ matrix, so the user is free to destroy the matrix if it is not needed.
Changes to the entries of the AIJ matrix will immediately affect the KAIJ matrix.
<P>

<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
 <A HREF="../Mat/MatKAIJSetAIJ.html#MatKAIJSetAIJ">MatKAIJSetAIJ</A>(), <A HREF="../Mat/MatKAIJSetS.html#MatKAIJSetS">MatKAIJSetS</A>(), <A HREF="../Mat/MatKAIJSetT.html#MatKAIJSetT">MatKAIJSetT</A>(), <A HREF="../Mat/MatKAIJGetAIJ.html#MatKAIJGetAIJ">MatKAIJGetAIJ</A>(), <A HREF="../Mat/MatKAIJGetS.html#MatKAIJGetS">MatKAIJGetS</A>(), <A HREF="../Mat/MatKAIJGetT.html#MatKAIJGetT">MatKAIJGetT</A>(), <A HREF="../Mat/MATKAIJ.html#MATKAIJ">MATKAIJ</A>
<BR><P><B></B><H3><FONT COLOR="#CC3333">Level</FONT></H3>advanced<BR>
<H3><FONT COLOR="#CC3333">Location</FONT></H3>
</B><A HREF="../../../src/mat/impls/kaij/kaij.c.html#MatCreateKAIJ">src/mat/impls/kaij/kaij.c</A>
<P><H3><FONT COLOR="#CC3333">Examples</FONT></H3>
<A HREF="../../../src/ksp/ksp/tutorials/ex74.c.html">src/ksp/ksp/tutorials/ex74.c.html</A><BR>
<A HREF="../../../src/ksp/ksp/tutorials/ex77.c.html">src/ksp/ksp/tutorials/ex77.c.html</A><BR>
<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>