File: DASetBlockFills.html

package info (click to toggle)
petsc 2.3.3-14
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 79,788 kB
  • ctags: 339,579
  • sloc: ansic: 255,388; cpp: 27,384; python: 27,194; fortran: 18,468; makefile: 11,436; sh: 3,671; f90: 1,447; xml: 620; csh: 211
file content (64 lines) | stat: -rw-r--r-- 2,899 bytes parent folder | download | duplicates (3)
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>DASetBlockFills</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<A NAME="DASetBlockFills"><H1>DASetBlockFills</H1></A>
Sets the fill pattern in each block for a multi-component problem of the matrix returned by <A HREF="../DA/DAGetMatrix.html#DAGetMatrix">DAGetMatrix</A>(). 
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscda.h"     
#include "petscmat.h"    
PetscErrorCode PETSCDM_DLLEXPORT DASetBlockFills(DA da,PetscInt *dfill,PetscInt *ofill)
</PRE>
Collective on <A HREF="../DA/DA.html#DA">DA</A>
<P>
<H3><FONT COLOR="#CC3333">Input Parameter</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>da </B></TD><TD>- the distributed array
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>dfill </B></TD><TD>- the fill pattern in the diagonal block (may be <A HREF="../Sys/PETSC_NULL.html#PETSC_NULL">PETSC_NULL</A>, means use dense block)
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>ofill </B></TD><TD>- the fill pattern in the off-diagonal blocks
</TD></TR></TABLE>
<P>
<P>

<P>
Notes: This only makes sense when you are doing multicomponent problems but using the
MPIAIJ matrix format
<P>
The format for dfill and ofill is a 2 dimensional dof by dof matrix with 1 entries
representing coupling and 0 entries for missing coupling. For example
<pre>
            dfill[9] = {1, 0, 0,
</pre>
<pre>
                        1, 1, 0,
</pre>
<pre>
                        0, 1, 1} 
</pre>
means that row 0 is coupled with only itself in the diagonal block, row 1 is coupled with
itself and row 0 (in the diagonal block) and row 2 is coupled with itself and row 1 (in the
diagonal block).
<P>
<A HREF="../DA/DASetGetMatrix.html#DASetGetMatrix">DASetGetMatrix</A>() allows you to provide general code for those more complicated nonzero patterns then
can be represented in the dfill, ofill format
<P>
Contributed by Glenn Hammond
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../DA/DAGetMatrix.html#DAGetMatrix">DAGetMatrix</A>(), <A HREF="../DA/DASetGetMatrix.html#DASetGetMatrix">DASetGetMatrix</A>(), <A HREF="../DA/DASetMatPreallocateOnly.html#DASetMatPreallocateOnly">DASetMatPreallocateOnly</A>()
<BR>
<P>
<P><B><P><B><FONT COLOR="#CC3333">Level:</FONT></B>developer
<BR><FONT COLOR="#CC3333">Location:</FONT></B><A HREF="../../../src/dm/da/utils/fdda.c.html#DASetBlockFills">src/dm/da/utils/fdda.c</A>
<BR><A HREF="./index.html">Index of all DA 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>
<P><H3><FONT COLOR="#CC3333">Examples</FONT></H3>
<A HREF="../../../src/snes/examples/tutorials/ex29.c.html">src/snes/examples/tutorials/ex29.c.html</A><BR>
</BODY></HTML>