]> https://gitweb.dealii.org/ - dealii.git/commitdiff
add documentation, fix missing initializations and fix strange name
authorGuido Kanschat <dr.guido.kanschat@gmail.com>
Wed, 30 Jun 2010 22:10:03 +0000 (22:10 +0000)
committerGuido Kanschat <dr.guido.kanschat@gmail.com>
Wed, 30 Jun 2010 22:10:03 +0000 (22:10 +0000)
git-svn-id: https://svn.dealii.org/trunk@21425 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/include/numerics/theta_timestepping.h
deal.II/deal.II/include/numerics/theta_timestepping.templates.h

index 33ce3b3b05cb10df089284bd798f79ef5a8a0b8d..b1d3c21129576f3c89fa8c7b8990aa86bc4638c7 100644 (file)
@@ -77,6 +77,35 @@ namespace Algorithms
  * the modified step sizes (and different times if the problem is not
  * autonomous).
  *
+ * <h3>Usage of vectors in NamedData</h3>
+ *
+ * ThetaTimestepping uses NamedData for communicating vectors. With
+ * outer or inner Operator objects. It does not use itself the input
+ * vectors provided, but forwards them to the explicit and implicit
+ * operators.
+ *
+ * The explicit Operator #op_explicit receives in its input in first
+ * place the vector <tt>"Previous time"</tt>, which is the solution
+ * value after the previous timestep. It is followed by all vectors
+ * provided to ThetaTimestepping::operator() as input
+ * argument. #op_explicit is supposed to write its result into the
+ * first position of its output argument, labeled <tt>"Result"</tt>.
+ *
+ * The implicit Operator #op_implicit receives the result of
+ * #op_explicit in its first input vector labeled <tt>"Previous
+ * time"</tt>. It is followed by all vectors provided to
+ * ThetaTimestepping::operator() as input argument. The output of
+ * #op_implicit is directly written into the output argument given to
+ * ThetaTimestepping.
+ *
+ * <h3>Setup</h3>
+ * The use ThetaTimestepping is more complicated than for instance
+ * Newton, since the inner operators will usually need to access the
+ * TimeStepData. Thus, we have a circular dependency of information,
+ * and we include the following example for its use. First, we define
+ * the two operators 
+ *
+ * 
  * @author Guido Kanschat, 2010
  */
   template <class VECTOR>
index 52b640b1f4146282b529fe2015395d66bc983a92..7b8c9c56bc644dc3f2fc910f982901c023ff5d91 100644 (file)
@@ -21,7 +21,7 @@ namespace Algorithms
 {
   template <class VECTOR>
   ThetaTimestepping<VECTOR>::ThetaTimestepping (Operator<VECTOR>& e, Operator<VECTOR>& i)
-                 : op_explicit(&e), op_implicit(&i)
+                 : vtheta(0.5), adaptive(false), op_explicit(&e), op_implicit(&i)
   {}
 
 
@@ -84,7 +84,7 @@ namespace Algorithms
                                     // The data provided to the inner
                                     // solver
     NamedData<VECTOR*> src2;
-    src2.add(p, "Previous time data");
+    src2.add(p, "Previous time");
     src2.merge(in);
 
     if (output != 0)

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.