File: MatSNESMFGetReuseBase.html

package info (click to toggle)
petsc 3.10.3%2Bdfsg1-5
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 209,064 kB
  • sloc: ansic: 587,333; python: 29,696; makefile: 12,445; fortran: 11,626; f90: 9,677; cpp: 8,768; sh: 1,027; xml: 621; objc: 445; csh: 194; java: 13
file content (48 lines) | stat: -rw-r--r-- 3,500 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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD> <link rel="canonical" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/SNES/MatSNESMFGetReuseBase.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>MatSNESMFGetReuseBase</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
   <div id="version" align=right><b>petsc-3.10.3 2018-12-18</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.10.3 v3.10.3 docs/manualpages/SNES/MatSNESMFGetReuseBase.html "><small>Report Typos and Errors</small></a></div>
<A NAME="MatSNESMFGetReuseBase"><H1>MatSNESMFGetReuseBase</H1></A>
Determines if the base vector is to be used for differencing even if the function provided to <A HREF="../SNES/SNESSetFunction.html#SNESSetFunction">SNESSetFunction</A>() is not the same as that provided to <A HREF="../Mat/MatMFFDSetFunction.html#MatMFFDSetFunction">MatMFFDSetFunction</A>(). 
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscsnes.h" 
#include "petscdm.h"   
<A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A>  <A HREF="../SNES/MatSNESMFGetReuseBase.html#MatSNESMFGetReuseBase">MatSNESMFGetReuseBase</A>(<A HREF="../Mat/Mat.html#Mat">Mat</A> J,<A HREF="../Sys/PetscBool.html#PetscBool">PetscBool</A> *use)
</PRE>
Logically Collective on <A HREF="../Mat/Mat.html#Mat">Mat</A>
<P>
<H3><FONT COLOR="#CC3333">Input Parameter</FONT></H3>
<DT><B>J </B> -the <A HREF="../Mat/MatMFFD.html#MatMFFD">MatMFFD</A> matrix
<br>
<P>
<H3><FONT COLOR="#CC3333">Output Parameter</FONT></H3>
<DT><B>use </B> -if true always reuse the base vector instead of recomputing f(u) even if the function in the MatSNESMF is 
not <A HREF="../SNES/SNESComputeFunction.html#SNESComputeFunction">SNESComputeFunction</A>()
<br>
<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
Care must be taken when using this routine to insure that the function provided to <A HREF="../Mat/MatMFFDSetFunction.html#MatMFFDSetFunction">MatMFFDSetFunction</A>(), call it F_MF() is compatible with
with that provided to <A HREF="../SNES/SNESSetFunction.html#SNESSetFunction">SNESSetFunction</A>(), call it F_SNES(). That is, (F_MF(u + h*d) - F_SNES(u))/h has to approximate the derivative
<P>
<H3><FONT COLOR="#CC3333">Developer Notes</FONT></H3>
This was provided for the MOOSE team who desired to have a <A HREF="../SNES/SNESSetFunction.html#SNESSetFunction">SNESSetFunction</A>() function that could change configurations due
to contacts while the function provided to <A HREF="../Mat/MatMFFDSetFunction.html#MatMFFDSetFunction">MatMFFDSetFunction</A>() cannot. Except for the possibility of changing the configuration
both functions compute the same mathematical function so the differencing makes sense.
<P>

<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
 <A HREF="../SNES/MatCreateSNESMF.html#MatCreateSNESMF">MatCreateSNESMF</A>(), <A HREF="../SNES/MatSNESMFSetReuseBase.html#MatSNESMFSetReuseBase">MatSNESMFSetReuseBase</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/snes/mf/snesmfj.c.html#MatSNESMFGetReuseBase">src/snes/mf/snesmfj.c</A>
<BR><A HREF="./index.html">Index of all SNES 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>