File: DMTSSetTransientVariable.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 (62 lines) | stat: -rw-r--r-- 3,938 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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD> <link rel="canonical" href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/TS/DMTSSetTransientVariable.html" />
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>DMTSSetTransientVariable</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/TS/DMTSSetTransientVariable.html "><small>Report Typos and Errors</small></a></div>
<A NAME="DMTSSetTransientVariable"><H1>DMTSSetTransientVariable</H1></A>
sets function to transform from state to transient variables 
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petscts.h" 
<A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A> <A HREF="../TS/DMTSSetTransientVariable.html#DMTSSetTransientVariable">DMTSSetTransientVariable</A>(<A HREF="../DM/DM.html#DM">DM</A> dm,TSTransientVariable tvar,void *ctx)
</PRE>
Logically Collective
<P>
<H3><FONT COLOR="#CC3333">Input Arguments</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>dm </B></TD><TD>- <A HREF="../DM/DM.html#DM">DM</A> to be used with <A HREF="../TS/TS.html#TS">TS</A>
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>tvar </B></TD><TD>- a function that transforms to transient variables
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>ctx </B></TD><TD>- a context for tvar
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">Calling sequence of tvar</FONT></H3>
<pre>
    <A HREF="../Sys/PetscErrorCode.html#PetscErrorCode">PetscErrorCode</A> tvar(<A HREF="../TS/TS.html#TS">TS</A> ts,<A HREF="../Vec/Vec.html#Vec">Vec</A> p,<A HREF="../Vec/Vec.html#Vec">Vec</A> c,void *ctx);
</pre>
<P>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>ts </B></TD><TD>- timestep context
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>p </B></TD><TD>- input vector (primative form)
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>c </B></TD><TD>- output vector, transient variables (conservative form)
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>ctx </B></TD><TD>- [optional] user-defined function context
</TD></TR></TABLE>
<P>

<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
This is typically used to transform from primitive to conservative variables so that a time integrator (e.g., <A HREF="../TS/TSBDF.html#TSBDF">TSBDF</A>)
can be conservative.  In this context, primitive variables P are used to model the state (e.g., because they lead to
well-conditioned formulations even in limiting cases such as low-Mach or zero porosity).  The transient variable is
C(P), specified by calling this function.  An IFunction thus receives arguments (P, Cdot) and the IJacobian must be
evaluated via the chain rule, as in
<P>
dF/dP + shift * dF/dCdot dC/dP.
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
 <A HREF="../TS/TSSetTransientVariable.html#TSSetTransientVariable">TSSetTransientVariable</A>(), <A HREF="../TS/DMTSGetTransientVariable.html#DMTSGetTransientVariable">DMTSGetTransientVariable</A>(), <A HREF="../TS/DMTSSetIFunction.html#DMTSSetIFunction">DMTSSetIFunction</A>(), <A HREF="../TS/DMTSSetIJacobian.html#DMTSSetIJacobian">DMTSSetIJacobian</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/ts/utils/dmts.c.html#DMTSSetTransientVariable">src/ts/utils/dmts.c</A>
<BR><A HREF="./index.html">Index of all TS 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>